C语言求大神解答

作者&投稿:佟申 (若有异议请与网页底部的电邮联系)
c语言,求大神解答。~



#include "stdio.h"
int main()
{
int a[10],i,j,num=0,max,max_num;
for (i=0;i<10;i++)
{
scanf("%d",&a[i]);
if(a[i]%2==1)
num++;
}
for (i=0;i<9;i++)
{
max=a[0];
max_num=0;
for (j=0;j<9-i;j++)
{
if(max<a[j+1])
{
max=a[j+1];
max_num=j+1;
}
}
if(max_num!=9-i)
{
a[max_num]=a[9-i];
a[9-i]=max;
}
}
printf("奇数个数为%d
",num);
printf("排序后数组:
");
for (i=0;i<10;i++)
printf("%d ",a[i]);
printf("
");
return 0;
}

这个代码有一些问题,现更改如下:
#includeint main(){ float c = 3.0,d = 4.0; if (c>d) c = 5.0; else if (c == d) c = 6.0; else c = 7.0; printf("%.1f
", c);}运行结果为:7.0
因为c<d,所以进入else,又因为c!=d,所以c=7.0。“%.1f”表示输出浮点数且小数点后保留1位。

参考:C语言工资管理系统源代码-andy

*--------------------------------*

#include<stdio.h>#include<stdlib.h>#include<string.h>#include<conio.h>#define N 100struct Salary_Info{  

int Card_No;            //工资卡号

   char name[20];          //姓名
int month;              //月份
float Init_Salary;       //应发工资
float Water_Rate;       //水费
float Electric_Rate;    //电费
float tax;              //税金
float Final_Salary;     //实发工资
float Final_Salary_sum; //实发总工资}; /*声明函数和定义全局变量*/struct Salary_Info SI[N];int  count=0; //计数有多少条记录,赋初值为0条     void Menu();                  //0void input();                 //1void sort_Menu();             //4void sort_Card_No();          //5void sort_Final_Salary();     //6void sort_name();             //8void display();               //9void save();                  //10void load();                  //11void search_Menu();           //12void search_Card_No();        //13void search_name();           //14void statistics();            //15void del();                   //18void add();                   //19void modify();                //20   /*定义各函数*/void main();




c语言题,求大神解答一下我做的对不对,急急急!
例二A才是正解。B中char a[]{0,1,2,3,4,5}内容不是定义字符,是定义int类型的写法。C中char a是定义了一个a的字符变量,却赋值字符数组的方式去赋值。D中给int类型的数组赋值了字符串,不正确。例五正解为C,数组a中存入了字符串,a[0] = 'x',以此类推,但是字符串初始化时,会在...

C语言选择题,求大神帮忙给个解析,谢谢了。
定义 x=10 y=20 z=30 如果 10>20 则 z=10:x=20:y=30:很明显10>20是flash 所以后面的语句z=10不执行 但是x=20,y=30执行 打印 x,y,z 打印20 30 30

求大神解答C语言题目 若运行时从键盘上输入2.0<CR>(CR表示回车),则下 ...
if((x<5.0)&&(x!=2.0) y=1.0\/(x+2.0); 漏括号,应是:if((x<5.0)&&(x!=2.0)) y=1.0\/(x+2.0);scanf("@f",&x); 格式 @f 将不能读入数值。假定 x 为 0, 条件判断 将满足 if((x<5.0)&&(x!=2.0)) 的条件,进入: y=1.0\/(x+2.0);y...

请问C语言中,整数都有哪些数据类型求大神解答?
C语言中,简单的内置类型有两种:整数类型和void类型(数组和指针是复合类型)。整数的数据类型有8种: unsigned char, signed char, short int, unsigned short int, int, unsigned int, long int, unsigned long。为了正确,合理的使用这些数据类型,我们需要了解他们的含意,并知道每个整数类型的取值范围...

C语言问题,求大神解答?
include<stdio.h> void main(){ char ch;int a;ch=getchar();if(ch>='a'&&ch<='z')ch='1';if(ch>='A'&&ch<='Z')ch='2';if(ch==' ')ch='3';switch(ch){ case'1':printf("小写字母\\n");break;case'2':printf("大写字母\\n");break;case'3':printf("空格\\n");br...

一个C语言程序问题,看晕了,求大神详解
while(y<=5){ if(x>=10)break; \/\/ <--- 1 if(x%2==0){ x+=5;continue;} \/\/ <--- 2 x-=3; y++; \/\/ <--- 3}循环开始,x=1,y=1 第一次循环: 条件1不成立,不会break。条件2不成立,执行3,x=-2, y=2;第二次循环: 条件1不成立。...

C语言题目,求大神解答
p=aa;\/\/p指向数组aa首地址,即a的位置 当i=0时,会执行 if ( i==0 ) aa[i][i+1]=**(p++); \/\/这时p=p+1,p指向了aa数组的第二行首地址,即d所在位置,所以,printf("%c\\n", **p ); 输出d 答案为C

一个C语言的问题,求大神解答原因!
1、sub1中的变量a,b是其所在文件中定义的,其中a是静态全局变量,b是全局变量 a会默认初始化为0,因此第一次执行sub1()时输出结果中a=0+2=2, b=3+3=6。sub2中的变量a是其所在文件中定义的静态全局变量,因为与sub1()所处不同文件,因此变量a是不同的;而变量b是与另一个文件共享的全局...

一道C语言的题目,跪求大神解答,拜托能不能解释一下运行过程
include<stdio.h>int main(){ int i,p[3][3]={1,2,3,4,5,6,7,8,9},*p1[3],(*p2)[3];\/\/ 二维数组p有3行,每行有3个整数.\/\/ 应该写成int p[3][3]={ {1,2,3}, {4,5,6}, {7,8,9} };\/\/ p等于0x28fee4,这是十六进制数,是内存地址,从这个内存地址开始,连续...

C语言两道题!!求大神解答
第一个字符是转义字符'\\t',制表符也就是TAB健,占用4个字节,所以总共就是4+1=5个字节啦。33、考察点:do while循环体;C语言使用0代表逻辑假,非0代表逻辑假;x++是x自增前的结果,++x是x子增后的结果。int x=5;do{ printf("%2d\\n",x--); \/\/先打印x自减前的结果,就是 5,...

岳阳楼区17183262098: 请教一道简单的C语言题目,求大神解答 -
淡文依倍: 你没考虑到相邻两个数相等你情况.你看样例第四组数开头有两个7,输出是-1,说明严格递增是a[i+1]>=a[i],严格递减是a[i]>=a[i+1].

岳阳楼区17183262098: c语言问题,求大神解答!给一个不多于5位的正整数.①求出它是几位数.②分别输出每一位数字.③按逆序输出各位数字.例如原数位465,应输出5 6 4.... -
淡文依倍:[答案] #include#include#includeint main(){int num,tmp,i,j;int n[5]={0};//用于存储num分解后的每位上的数字,由于num不超过5位,所以数组有5个单元就可以了 int *sq_ls_num;printf("请输入一个不多于5位的正整数: ");sc...

岳阳楼区17183262098: 求c语言大神解答 -
淡文依倍: 首先你printf后面的是打错了吧.是选择B,没错. 因为p数组没有结束符,用strlen测长度会出错,而q数组,虽然后面没有结束符,但是,q数组指定了它的长度为10,那么后面就还有7个0,那么就也相当于有了结束符,所以q数组是不会出错的,而且会有输出结果,是3

岳阳楼区17183262098: 求大神解答c语言 -
淡文依倍: i+=j+=k; 先j=j+k=2+3=5,之后i=i+j=1+5=6i<j?i++:j++ 先i<j判断,6<5为假,故执行j++,先将j=5输出,之后j=6k+=i>j?i++:j++ 相当于 k += (i>j?i++:j++) 就是先计算括号内的值i>j,就是6>6为假,故先j=6是括号表达式的值,之后j自加 j=7

岳阳楼区17183262098: 求C语言大神解答要详细的答案!! -
淡文依倍: #include void chg(char *s){ int i; while(*s!='\0') { /*用大括号把下面几句弄成一个语句块*/ if(*s=='Z'...

岳阳楼区17183262098: C语言题目,求大神解答~!!! -
淡文依倍: 这是一个字符串检索问题://在S字符串中检索子串T(模式匹配) int Index(char *S, char *T){ int i,j,lenS,lenT; for(lenS=0;S[lenS];++lenS); for(lenT=0;T[lenT];++lenT); i=1;j=1; while(i if(S[i-1]==T[j-1]){ ++i;++j; }//匹配,一起后移 else {i=i-j+2;j=1;if(i>...

岳阳楼区17183262098: c语言题求大神解答 -
淡文依倍: #include<stdio.h>int main(){ int arr[3][3],brr[3][5],i,j,m,n; printf("请输入值:\n");for(i=0;i<3;i++) for(j=0;j<3;j++) scanf("%d",&arr[i][j]); printf("输入的数组为:\n");for(i=0;i<3;i++) { for(j=0;j<3;j++) printf("%d ",arr[i][j]); printf("\n"); }...

岳阳楼区17183262098: C语言急求大神解答 -
淡文依倍: void process(char s1[], char s2[], char s3[]){ int n = 0; char* str[2] = { s1,s2 }; for (int i = 0; i < 2; i++) { char* p = str[i]; for (int j = 0; *p != 0; j++) { s3[n] = *p; p++; n++; } } s3[n] = 0; for (int i = 0; i < n; i++) { for (int j = 0; j < n - i - 1; j++) { if (s3[j] > s3[j + 1]) { int ...

岳阳楼区17183262098: C语言求大神解决 用3种方法,会哪种说哪种也行 -
淡文依倍: main(){for(int i=0;i<5;i++){ for(int j=i;j<5+i;j++){ printf("%d",j%5+1); } } printf("\n"); }

岳阳楼区17183262098: 急求 C语言大神解答 -
淡文依倍: s = 0;.....if (str[i]>='0' && str[i] s=s*10+str[i]-'0'; /*请修改此处*/

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网