几个简单的c语言小问题 解决一题给十分

作者&投稿:曹胡 (若有异议请与网页底部的电邮联系)
一个十分简单的C语言问题!急!~

#include int main(){char ch;for(;;){scanf("%c",&ch);if(ch'9') printf("请输入一个数字!
");fflush(stdin); //清除标准输入缓冲区,这样就不会输出两次了}return 0;}

既然你对C语言知之甚少,就直接把这两个函数给你朋友看吧!如果他懂C语言,一定会明白并且满意!

输入输出部分与程序意图和主函数有关,而且十分简单。你朋友一定知道输入输出这么简单的操作的。


**********************************************

题目只要求写出查找函数,没有要求主函数:

“请分别编写函数,在链表中查找数据域值最大的结点”

而且由于不明白具体程序的意图,所以无法写出符合要求的主函数。

**********************************************

函数1,返回最大值:

int max(struct TT *p)
{
int m;
struct TT *p;

p=head->next;
m=p->data;
for(p=p->next;p;p=p->next)
if(mdata){m=p->data;}

return m;
}


函数2,返回最大值地址:

struct TT *max(struct TT *p)
{
int m;
struct TT *pmax;
m=p->data;
pmax=p;
for(p=p->next;p;p=p->next)
if(mdata){m=p->data;pmax=p;}
return pmax;
}

一。 d=20 if(a) d=d-10; a=0 if条件语句为假不执行 else if(!b) 不执行 if(!c) d=15; else d=25;是 else if(!b)下的语句 也不执行
二。 x=1 y=z=x; 赋值语句 x先赋给z 再赋给y x=y==z 先判断条件语句 y==z 是真
的 语句值为1 再赋给x
三。 第三题是要干什么

第一题:最后一行printf有错,应该改成:printf("d=%d\n",d);
答案是 d=20

第二题:x结果为1

第三题:不知道输入什么,所以不知道输出什么。且程序多处错误,main函数大括号不匹配,字符应该用单引号括起而不是双引号等。

第一题
答: d=15
解析:注意程序的结构,多加几个括号程序就很清晰了
main()
{ int a=0,b=1,c=0,d=20; if(a) { d=d-10; } else if(!b) { if(!c) { d=15; } } else d=25; printf("d=%d\n",d); }
第二题
答: x = 1
解析:执行y=z=x后,y=z=x=10,注意赋值是从右到左;
执行x=y==z,实际上是先执行y==z,这个是个判断语句,成立值为1,不成立值为0
故x = 1

第三题
具体不知道要干啥,可是好些地方写错了,就当程序改错吧
int main()
{ char c; while((c=getchar()) != '\n') { switch(c - '2') { case 0: case1:putchar(c+4); case2:putchar(c+4);break; case3:putchar(c+3); default:putchar(c+2);break; } } printf("\n");}

第一个:结果为d=20
printf(d="d\n",d) / / 这里错误。
修改为:
printf("d=%d\n",d);

1.d = 20 2.x = 1 3.88898787


c语言编程中的小问题
a = (int)(a * 100)\/100.0;

C语言的小问题
int a[][3]={1,2,3,4,5,6,7};这个定义相当于是这样的 int a[][3]={{1,2,3},{4,5,6},{7,0,0}} a的第一个维度就是3。系统会根据第二个维度大小自动设置第一个维度。注意,这里第二维度是不能像第一个维度那样省略的。编译器会自动计算一个最小的,且又能包容所有那些...

c语言小问题
char c[]=”ffff”; printf(“a=%d\\n”,strtod(a,NULL,10)); printf(“b=%d\\n”,strtod(b,NULL,2)); printf(“c=%d\\n”,strtod(c,NULL,16)); } 执行a=1000000000 b=512 c=65535 strtol(将字符串转换成长整型数) 相关函数 atof,atoi,atol,strtod,strtoul 表头文件 #include<stdlib.h> 定义函...

C语言编程小问题
int c = pos,t = 0;for(int i = 2 * MAX - 2; i > 2 * MAX - 2 - temper[0]; i--){ if (result[c] == -1)

C语言小问题
int main();是ISO\/IEC 14882 C++和ISO\/IEC 9899 C标准中规定两个的主函数原型之一(其中C标准原文是int main(void);)。(另一个是int main(int argc, char* argv[]);,后面的参数用来传递命令行。)主函数返回值用于传递给外部环境,例如操作系统或者调用这个程序的其它进程。通常的语义是,返回...

C语言程序学习小问题
scanf("%c",&x2);switch(x2){case 'y': \/\/每个case条件完成后加上break;避免case穿透。你自己加下。printf("你的孩子是否有良好的饮食习惯?是请输入t,不是请输入r");scanf("%c",&x3);switch(x3){case 't':h=(a+b)*0.54*1.02*1.015;printf("你的孩子的身高是:%f",h)...

C语言编程小问题
1。你上边定义变量的时候定义的是double类型的,然后下边的输入和输出分别用的是%f和%d,类型不匹配,%f对应的类型是float,%d对应的类型是int,%ld对应的才是double的 2。变量定义的格式不对不对,f(x)不符合标识符定义规则,换一下,换成f或者别的;3。算平方的时候不能直接写x^2,系统无法识别...

C语言入门小问题
[0],“9”是a[1][0],“-10”是a[2][0]。然后函数本身是从第一个数开始找数组中的最大值。先假定第一个数是最大值(即max=a[0][0];这句)。若有比max大,则把此值赋给max,row存的是第一个下标,colum存的是第二个下标。最后就是输出了。——若有不懂可以再追问,望采纳。

C语言程序结果小问题
所以传入sub()函数的x是100。100>50?100:50 的结果是100。因此第一个输出是100。而语句块变量作用域只在语句块内,退出语句块会失去作用(内存空间被释放)因此第二个输出语句起作用的是全局变量x所以结果是30,50。include<stdio.h> int x=30 , y=50 ;sub(int x , int y ){ y=x>y?x...

一些简单的C语言题目第3弹,请高手指教!
printf("%c%c",219,219); printf("\\n"); } getch(); } 【程序11】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月 后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21...2.程序源代码...

覃塘区17747757994: 几道简单的C语言题 反正自己做不来 -
一琬脉络: 1) #include void main() { int n,a,i; long int an=0,Sn=0; printf("n= "); scanf("%d", printf("a= "); scanf(...

覃塘区17747757994: C语言几道简单的题目 -
一琬脉络: 第一题: #include<stdio.h> int main() { int i,a=0,b=0;char s[100];scanf("%s",s);for(i=0;s[i]!='\0';i++){ if((s[i]<='Z'&&s[i]>='A')||(s[i]<='z'&&s[i]>='a')) a++;if(s[i]<='9'&&s[i]>='0') b++;}printf("字母:%d,数字:%d\n",a,b); } 第二题: #...

覃塘区17747757994: c语言里几个简单的问题? -
一琬脉络: 第一个问题,说的是汇编里的表示方法吧,正和负的确是不一样的,第二题是值是多少,要看用什么数据类型存储或者输出类型决定,如果超出对应数据类型的范围值,就会造成溢出,结婚肯定不对了第三题,和第二题一样,如果i为0时,再减1会出现溢出,造成程序出错

覃塘区17747757994: 简单的C语言问题 -
一琬脉络: main() int a,b,c,t; scanf("%d%d%d",&a,&b,&c); /* 输入三个数 */ printf("a=%d,b=%d,c=%d",a,b,c); /* 做比较用 */ t=a;a=b;b=t; /* 现在b原来的值变成了a的值,a原来的值变成了b的值 */ t=a;a=c;c=t; /* 这时候 a的值(其实是b的原值) 变成了c的值,也就等于b 的值给了C;*/同时C的值也给a printf("%4d,%4d,%4d",a,b,c); }

覃塘区17747757994: 哪位大爷帮我解决几个简单C语言程序题?感谢万分! -
一琬脉络: #include#include void main() {float solut(float a,float b,float c); float a, b,c; printf("input a,b,c"); scanf("%f ,%f, %f",&a,&b,&c); printf("x=%10.2f\n",solut(a,b,c)); } float solut(float a,float b,float c) { float x=1.5,x0,f,f1; do { x0=x; f=(a*x0+b)*x0+c; f1=2*...

覃塘区17747757994: 一道简单的c语言题目求解 -
一琬脉络: #include <stdio.h> int main() { char c[5]; printf("输入4位数\n"); scanf("%s",c); for(int i=0;i<4;i++) printf("%c ",c[i]); scanf("%s",c); return 0; }

覃塘区17747757994: 关于c语言的一个小问题一个很简单的问题:1.if(a>0)
一琬脉络: 看看 1. if(a > 0 )a =4; if(a 0 ) a= 4 ;else a =-4; 这是一条c语句,编译器编译结果是: cmp a,0 (比较a和0) jnb l1 (a不大于0跳到 l1 执行 mov a,4 (a大雨0,将a设置为4) jmp lend (完成变量设置) l1:mov a,-4 (设置为-4) lend; 可以看出,第二个编译结果少了一行比较汇编语句和一条跳转语句,因此总的来说第二条语句会效率高一点点 但是现在很多编译器很聪明,将对第一方案进行有优化,最终结果和2是一样的 我建议你采用第二条语句

覃塘区17747757994: c语言最最最最简单的一个问题(请用最简单的语句解答) -
一琬脉络: #include void main() { int v,n; float k; printf("请输入产品的版本:(输入1表示标准版,输入2表示豪华版) "); scanf("%d",&v); printf("请输入产品的数量:"); scanf("%d",&n); if ( v==1 ) k=3.5*n; else k=5.5*n; printf("该产品总价为$%.1f\n",k); }

覃塘区17747757994: 简单的c语言的问题,谢谢高手 -
一琬脉络: assert是当括号里的内容为假时程序报错.while( (*strDest++ = * strSrc+0' ) 这句while是精华啊~~~~~将*strSrc赋值给*strDest,然后判断是不是已经到达\0(即字符串...

覃塘区17747757994: 帮忙解决几题C语言的问题 -
一琬脉络: ( 1 ) #include<stdio.h> #include<stdlib.h> void main() { int a,b,temp; printf("请输入要交换的两个数:\n"); scanf("%d %d",&a,&b); printf("您输入的两个数是:a=%d,b=%d\n",a,b); temp=a; a=b; b=temp; printf("交换后:a=%d,b=%d\n...

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