很简单的c语言问题!分很好拿啊!!高手帮忙啊!

作者&投稿:张肺 (若有异议请与网页底部的电邮联系)
1、加了static表明是静态变量,系统会赋初值0。
2、问题说的不是很明白,但是多少明白一些。函数的返回值类型是表明当程序执行自定义函数完毕的时候,所得到的值的数据类型,和主调被调没什么关系,就算你定义的函数不需要调用,系统仍然会提醒你添加返回值类型,在这个意义上讲,应该是你说的对了。还要纠正一个错误,主调与被调是相对的,并不是main()函数就是主调函数,当自定义函数在做递归调用的时候,自己也是自己的主调函数。
3、你的这个程序我没太看明白,上机调试也调不出来,错误很多啊,你的意思好像是要将这个数组里的元素对调吧?不明白为什么定义了10个元素却只是显示6个,不明白你的意思是什么啊?程序我改了一下,如下:
#include<stdio.h>
void main()
{
int i,temp,a[10]={2,3,4,5,6,7};
for(i=0;i<3;i++)
{
temp=a[i];
a[i]=a[5-i];
a[5-i]=temp;
}
for(i=0;i<6;i++)
{
printf("%d",a[i]);
printf("\n");
}
}
不知道是不是你想要的结果,至于循环次数的问题,在c语言的书里应该讲解的很清楚的,自己翻翻书吧,加深你的记忆。基础知识不是很好的样子啊!
解答完毕。。。

关于第二题的补充,你的解释我看明白了,首先你要明白一点返回值只是一个值,在你定义
float average(float *data,int n){ ...} 这个函数的时候,就已经定义了返回值类型是float,换个例子讲,
int function(float i,double j){}
这个函数就是定义函数function的返回值类型是int的,定义的形参i和j分别是float型和double型,这是在函数定义时就已经声明的,当你在调用函数的时候不需要再对参数的类型进行更改了,当然如果你要强制转换类型的话,也可以把其他类型的数放到里面。
补充完毕。。。

上一楼的答案我只想补充一点,就是第一点,默认不是0,而是.F.

请高手帮忙看看这个C语言程序错在哪里?很简单,新手问题。。~

你的主函数第一行定义变量出现了错误,应该将
int i;t;n=20;
修改成:
int i,t,n=20;
我不建议你像楼上的哪种方法,如果在以后的程序编写中须要定义多个变量的话,它的形式会显得复杂。没有什么意义。只是在简单的小程序中,这样定义有利于初学者检查错误。

1楼说的对呀,是选择C。
解释:因为%c是字符类型的,与之相对应的关键字应该是char而非int.
而与int相对应的是%d,所以C是错误的。
这都是最基本的概念,祝你学习成功!

一个关于c语言非常简单的问题
答:你if里是逗号表达式,从左到右求值,但整个表达式的值只取最后一个,即只要a!=c即满足if为true的条件。以下是逗号表达式的说明:c语言提供一种特殊的运算符,逗号运算符,优先级别最低,它将两式联接起来,如:(3+5,6+8)称为逗号表达式,其求解过程先表达式1,后表达式2,整个表达式值是表达式2...

c语言简单问题
答:include main(){ int k=4, m=1, p;p=func(k,m); printf("%d,",p);p=func(k,m); printf("%d \n",p);} func(int a, int b){ static int m=0, i=2;i+=m+1;m=i+a+b;return m;} 第一次:func(int a, int b){ static int m=0, i=2; //这里的m和i是...

关于C语言的简单问题
答:a值为0,前面a的值也就成了0。a+=0。0+0结果还是为0.至于第1题。结果不可能为0.要不就题有错,要不就答案有错。以上结果经过C测试。总体来说。以上题目需要注意两点:1)如果均是赋值运算时,运算要从右到左的算。2)赋值运算会修改变量的值,先赋值的,会影响其后运算原变量的值。

C语言很简单很简单的问题13
答:printf("%d%d\n",c,d); //c,d的值不变 return 0;} int t(int x,int y,int cp,int dp){ cp=x*x+y*y;dp=x*x-y*y;return 0;} 要想改变C,d的值,把t函数改成这样 int t(int &x,int &y,int &cp,int &dp){……} 记得把前面声明函数部分也得改成这样,第二个问题 ...

C语言问题,很简单的,急急急
答:include"stdio.h"include"string.h"include"stdlib.h"include"math.h"void main(){ char s[100]; //这里是输入的10进制数,实际上不是数字,而是字符串(因为如果字符有几十位,用long就不行了)char a[100]; //这里是保存答案 long i,j,k,n;scanf("%s",s); //输入 for(i=0;i<100...

C语言简单问题。
答:错误:1、读取m的值,又关于m循环,思路混乱。2、1/m是整型运算,对于大于1的m,1/m都等于0 3、s定义为整型,而且没有赋初始值,得不到正确值,就算输出时按浮点型输出,结果也不正确。一个小程序,错误百出,语句错了一半,算法全错。修改如下:include <stdio.h>int main(){int i,m;//...

c语言超级简单问题
答:原型:extern int strcmp(const char *s1,const char * s2);用法:#include <string.h> 功能:比较字符串s1和s2。一般形式:strcmp(字符串1,字符串2)说明:当s1<s2时,返回值<0 当s1==s2时,返回值=0 当s1>s2时,返回值>0 在你的程序中a,b不是以'\0'结尾的,strcmp比较时是要找到'\...

C语言的简单题目
答:第一题 long a; //陌生人给富翁,单位万 long b; //富翁给陌生人,单位分 int main(){ int i;long todaygive;todaygive=1;for(i=0;i<30;i++){a+=10;b+=todaygive;todaygive*=2;} printf("陌生人给富翁:%ld0000元\n",a);printf("富翁给陌生人:%ld.%ld元",b/100,b%100);ge...

C语言的问题,好简单
答:i的值分析出来了j就很简单了。应该为13 j=3+5+5 这个问题还要注意的是,编译器的问题,不同的编译器有不同的算发。在C语言和C++、java 你可以去试一下。得到的答案不一样。i是一样的,就是j不一样。在c++里j为12。在java里j为13。所以我的思维是向着java的。所以给你答案也是13。

C语言简单问题
答:关于指针:老师们经常让我把它当门牌号,我当时就是不开窍听不懂,后来看多了,自己试验也就明白了。指针不同于一般类型,如int、char、bool, 但它却又和这些类型分不开,它里面的内容不是数据,比如int类型里有231、char里有'b'、bool里有false...而指针就是这些数据多了个星号'*',而它的内容...