C语言求大神解答
这个代码有一些问题,现更改如下:
#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语言程序,我帮你改完了,你看看吧.(主要问题是数字和字母的if判断语句应该是一个范围)(改动的地方见注释)
#includeint main(){ int i=0,space=0,num=0,n=0,ch=0; char s[20]; printf("请输入一串字符"); gets(s); while(s[i]!='\0') { if(s[i]==' ') space++; else if(s[i]>='0'&&s[i]='0'&&s[i]='a'&&s[i]='A'&&s[i]='a'&&s[i]='A'&&s[i]<='Z') ch++; else n++; i++; } printf("刚才输入的字符中英文字符个数为%d
",ch); printf("刚才输入的字符中空格个数为%d
",space); printf("刚才输入的字符中数字个数为%d
",num); printf("刚才输入的字符中其他个数为%d
",n); return 0;}
1.可以作为自定义标识符的是( D )自定义标示符必须以字母数字或者下划线开头,同时不能使系统的关键字
A.2x B.break C.m-n D.m_n
2.正确的变量定义是( A)
A.unsigned long d=1000; B.float m1=m2=10.0;
C.char c1=’A’,c2=A; D.double x=0.618,x=3.14;
3.表达式的值为0的是( C)
A.5/5%5 B.5>2 C.!4 D.0x7&&7
4.设int a=1,b=2;,则执行逗号表达式a=b+2,a++,a+b;后a和b的值分别是(D )
A.1和2 B.3和2 C.4和7 D.5和2
5.设int a=2,b=3,c=4;,则表达式a>b&&b<c||b的值是( B )
A.-1 B.0 C.1 D.2
6.设int a=2,b=3,x,y;,则能正确执行的语句是( B )
A.scanf(〞%d,%d〞,x-y,x+y); B.printf(〞%d\n〞,a%b);
C.printf(〞%f\n〞,a+b); D.scanf(〞%d,%d〞,x,y);
7.设char s[10]= 〞abcde〞, t[ ]= 〞12345〞; ,则s和t在内存中分配的字节数分别是( D )
A.6和5 B.6和6 C.10和5 D.10和6
8.设int a=10,*p=&a; ,则执行printf(〝%d\n〞,*p+a);的结果是( B )
A.10 B.20 C.30 D.40
9.自定义函数中形式参数的作用域是( B )
A.本文件 B.本函数
C.main 函数 D.整个程序
10.设int b[ ][5]={1,2,3,4,5,6,7};,则元素b[1][2]的值是(A )
A.0 B.2 C.6 D.7
11.对函数而言,叙述正确的是( C )
A.函数中只能有一个return 语句
B.当函数的形参是数组时形实结合为值传递方式
C.程序中只能有一个main函数
D.无参函数的函数体内不能出现return语句
12.执行下列程序段后输出的结果是(A )
int x,y,z=1;
for(x=1,y=-1;x<y;x++,y--)z++;
printf(〞%d\n〞,z);
A.1 B.2 C.5 D.6
13.设static int a[3]={1,2,3};int*p[ ]={&a[0],&a[1],&a[2]};则与数组元素a[1]等价的是( A )
A.*p[1] B.p[1] C.*p+1 D.p+1
14.设
struct
{
char name[10];
int age;
}stu[2]={{ 〞Tom〞,25},{〞Mary〞,26}},*p=stu;
则执行语句printf(〞%s%d\n〞,p->name,stu[1].age);后输出结果是( B)
A.Tom25 B.Tom26 C.Mary25 D.Mary26
15.设typedef double DB;,则与DB u[5];的等价形式是( D)
A. double db[5]; B.double DB[5];
C.double u; D.double u[5;]
16.下列属于文件包含的命令是( C )
A.#define N 25 B.#endif
C.#include ″stdio.h″ D.#else
17.设enum week {mon,tue=2,wed,thu,sat=6}day;,则枚举常量mon和thu的值分别是( B )
A.0和4 B.1和4 C.0和3 D.1和5
B D D D D C C 不会 B D C 12题真能做么 后面全不会了 错了不负责
AACDCBDBBACAABDCA
急求c语言大神解答,小妹坐等
include<stdio.h>#include<stdlib.h>#include<math.h>typedef struct time{ int hour; int minute; int second; char show[16]; } time;int main(){ time t; t.hour = rand()%25; t.minute = rand()%61; t.second = rand()%61; printf("起始时间--...
语言题目,求大神教导第六题解题过程
首先do while是肯定会执行至少一轮循环 首轮循环输出结果是3,这里考察后置--操作符,其值是x,副作用是x=x-1.因此第一个输出肯定是3,排除了a和d 之后看循环继续条件为 !x,即x为0则继续循环,否则退出循环 根据上面的分析,循环一次后x为2,退出循环 因此只能输出一个3 ...
求C语言大神解答
比如我想输出D,就是第0个元素的第三列w[0][3]至于为何用&,就是取地址没啥好解释的,你想打整个字符串元素,可以用w[i],也可以&w[i],但是print w[i][i] 和& w[i][i]是不一样的,前者是一个字母,后者是这个字母的地址,输出从这个地址到结束符的部分。第二个程序也是基础题,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语言 计算机题 求大神解答~
1、能正确表示逻辑关系:“a≥10或a≤0”的C语言表达式是“a>=10||a<=0”。(D选项)解析:“≥”用“>=”表示,“或”用“||”表示。2、判断char型变量c是否为大写字母的表达式是“(c>='A')&&(c<='Z')”。(C选项)解析:大写字母是A~Z,加上单引号,可以直接用来判断是否符合要求...
求C语言大神给解答一下。。。两道题
4.||和&&在运算时都是从左到右看的;如:若 ||的左边为1,编译器就直接认为表达式为 1 ,不会看右边了;若 && 左边为 0;整个表达式就直接为 0,也不看左边了;所以此题中只有 a 做了运算;5.有逗号运算符时,表达式的值为最后一个运算的值;如 n=(1+1 , 1+2); 则n=3;...
c语言题目,求大神解答
1)include "stdio.h"#include <string.h>void mysort(char (*p)[50],int n){int i,j,k;char t[50];for(i=0;i<n;i++){for(k=i,j=k+1;j<n;j++)if(strcmp(p[k],p[j])>0)k=j;if(k!=i){for(j=0;t[j]=p[i][j];j++);for(j=0;p[i][j]=p[k][j];j++...
C语言问题求解!~求大神快速解答!~
原因是这样的。define 指令是一个宏定义,其解析是在编译时完成的,并不是在运行的时候。你代码中的这一句 t=MAX(a+b,c+d)*10; 在带入宏后,变后了这样:t = ( a+b) > (c+d) ? (a+b) : (c+d) * 10 由于 a+b = 7, c+d = 6,故上式变成:t = 7 > 5 ? 7 : ...
C语言问题,求大神解决,说下所使用的原理及知识点,谢谢啦,我是小白...
char c=’A’; \/\/在ASCII码中 字符'A'是 65 c = (c>=’A’ && c<=’Z’) ? (c+32) : c;这个表达式的意思是: c>=’A’成立, c<=’Z’也成立,所以执行c+32 c+32 = 65+32 = 97;在ASCII码中 字符97是字符'a'所以答案选择 B ...
跪求大神解答一道C语言题
您好,很高兴回答您的问题。以上就是我的回答,希望能帮助到您。
邵卖一夫: (1) void fun(char s[],int b[])(2) fun ( s1, a )(3) s[i] >= '0' && s[i] <= '9'(4) s[i] == ' ' 严格按照空缺填的 自己注意下分号吧
赛罕区15071017619: 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...
赛罕区15071017619: c语言! 求大神详解!!!!!! - ?
邵卖一夫: 本题选B!字符串包含以下八个字符:a \041--》)#041 \\--》\ b
赛罕区15071017619: 请教一道简单的C语言题目,求大神解答 - ?
邵卖一夫: 你没考虑到相邻两个数相等你情况.你看样例第四组数开头有两个7,输出是-1,说明严格递增是a[i+1]>=a[i],严格递减是a[i]>=a[i+1].
赛罕区15071017619: C语言大神求答案~1.从键盘输入两个运算数(datal和data2),做加法运算,并输出计算结果.2. 判断一个数n能否同时被3和5整除3. 求1+2+3+……+100 - ?
邵卖一夫:[答案] 第一题: #include void main() { int data1,data2; printf("请输入第一个数:"); scanf("%d",&data1); printf("请输入第二个数:"); scanf("%d",&data2); printf("两个数的和为%d",data1+data2); } 第二题: #include void main() { int ...
赛罕区15071017619: 求C语言高手解答?
邵卖一夫: C语言是一种计算机程序设计语言.它既有高级语言的特点,又具有汇编语言的特点.它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不 依赖计算机硬件的应用程序.因此,它的应用范围广泛. C是结构...
赛罕区15071017619: 跪求C语言大神解答,急用急用,谢谢大哥大姐们解答. 急需C语言大神,必有重谢 - ?
邵卖一夫: #include <stdio.h> int main() { int n,i; double s=0; scanf("%d", &n); for(i=2;i<=n;i+=2) { s+=1.0/i; } printf("%lf", s); return 0;}
赛罕区15071017619: 求C语言高手解答 - ?
邵卖一夫: c是比较智能的,当他明确知道一个表达式的值时,剩下的式子不会再进行运算.比如&&运算,当两个值其中一个为0时,他就是0了,第二个式子就不用运算,由于a=5,b=6(m=a>b)相当于(m=5>6)所以,m=0...
赛罕区15071017619: 求c语言大神解答 - ?
邵卖一夫: 首先你printf后面的是打错了吧.是选择B,没错. 因为p数组没有结束符,用strlen测长度会出错,而q数组,虽然后面没有结束符,但是,q数组指定了它的长度为10,那么后面就还有7个0,那么就也相当于有了结束符,所以q数组是不会出错的,而且会有输出结果,是3
赛罕区15071017619: C语言问题,求大神解决,谢谢啦,我是小白,最好能够解释下原因 - ?
邵卖一夫: 已修改,看注释#include int main() { char a[20],b[20],c[50],*p1,*p2,*p3; p1=a,p2=b,p3=c; gets(a); while(*p1) { *p2 = (*p1)+3; //对字符串中的每个字符用加3的方法加密并存入数组b p1++; p2++; }*p2='\0'; //串结束符 p2=b ; //p2重新指向b的开始位置 while(*p2) { *p3 = (*p2)-3; //对b中的字符串解密存入数组c p3++; p2++; }*p3='\0'; puts(a); //puts是输出一个串 puts(b); puts(c); return 0; }