C语言题求解。

作者&投稿:章放 (若有异议请与网页底部的电邮联系)
C语言题。求解!~

第一题,第一次输入a=数值,空格或者回车,然后b=数值
第二次输入数值,空格或回车,最后再次数值
第三次,连续输入两个字符,中间不能添加空格和回车
第二题,和第一题类似
第三题,第一次输入数值,加一个逗号,然后第二个数值
第二次输入字符,中间加空格或者回车,然后第二个数值
总之,给你一张图片,你去理解一下

scanf(“%c”,&a);
输出结果a=8589.....
如果你想输出a=a
则题目条件printf(“a=%c”,a);才行

这种类型的题目,很简单,但是又相当关键,是编程基础中的基础,下面给你解答

第一问x为负数,可以写为x<0;

第二问x为奇数,需要用到取余运算符,如果对2取余结果为0,则表明能够被2整除,显然是偶数,如果是1,则为奇数,因此本题可写为x%2!=0或者x%2=1

第三问跟第二问差不多,x%3!=0,你可以认真体会一下不等号和取余的运算

第四问x为非负数,意思就是其值大于等于0,所以我们可以表达为:x>=0

以上请仔细体会,很重要的内容,加油



第一个空是输入字母,字母是属于字符型,所以是%c%c。
因为是小写字母,第二个空转换成大写字母,所以是c1-32,c2-32。
第三个空是输出整型字母的值,也就是"%d,%d,%d,%d",c1,c2,c1-32,c2-32。

根据题意可知,第一个x为负值的表达式是x<0;第二个x为奇数的关系式是:x%2==1;第三个x不能被三整除的关系式是:x%3!=0;第四个x为非负数的关系式是:x>=0。

因为scanf中要求先要输入a=和b=,所以运行时的输入中也要包含以上字符,另外,由于警戒下的输入是输入字符。

第一空:x<0
第二空:(x & 1) != 0 //这是优化算法,但我猜题目要求写 (x % 2) != 0
第三空:(x % 3) != 0
第四空:x >= 0

c语言问题 求解!!谢谢
答:注意,b-->=0;这里b--是比较之后再自减,比如b=1,先进行b=1>=0判断,后进行b--.程序执行过程中变量变化如下:i=1,b=1,while循环2次,k=2 i=2,b=0,while循环1次,k=3 i=3,b=1,while循环2次,k=5 i=4,b=0,while循环1次,k=6 i=5,b=1,while循环2次,k=8 当b=0时,...

c语言基础问题求解
答:--p就是取p-1的值,这里p是指针,因此就是指针前移1,结果是a[0]的地址 取地址的值,就是取a[0]y = a[0]++; 就是a[0]的值。这个程序*p=a[1]在大部分编译器都会报错,类型不匹配

求解c语言问题
答:这个题目算法:形式一:就是从1开始自增,自增次数是二维元素个数。形式二:[a,b],其中a表示行数,b表示列数。形式三:[a,b],其中a与行数有关,b与列数有关。在循环中a初值取(行数/2)并自减,b初值取(列数/2*-1)并自增。代码实现方式很多。这里题目指定要二维数组,但没有指定是...

编程题 c语言求解
答:编程题 c语言求解 编程统计学生考试成绩。设有M个学生,进行N门课程的考试,求学生考试的总分数及平均分,并按照总分由高到低的次序打印学生的名次,学号,各科成绩,总分,和平均分数,M,N通过scanf(... 编程统计学生考试成绩。设有M个学生,进行N门课程的考试,求学生考试的总分数及平均分,并按照总分由高到低的次序...

c语言题求详解
答:建议程序改为:include<stdio.h> void abc(char *p){ int i,j;for(i=j=0; *(p+i)!='\0'; i++)if(*(p+i)>='d'){ (p+j)=*(p+i);j++;} (p+j)='\0';} void main(){ char str[ ]="cdalb";abc(str);puts(str);} 答案:C 第一层for循环时i=j=0,p+i指向...

C语言题目,急求解,求助
答:include<stdio.h> int main(){ int m, n;scanf("%d%d", &m, &n);printf("%d %d\n", sizeof(int), sizeof(char));printf("%c %c\n", m, n);return 0;}

求解一道C语言题目
答:include <stdio.h> include <stdlib.h> include int GetPrime(int a[], int b[], int n) { int C = 0;for(int i = 0; i < n; i++) { int j;if(a[i] == 1 || a[i] % 2 == 0)continue;for(j = 2; j * j <= a[i]; j++)if(a[i] % j == 0)break;...

简单c语言题!求解!!急!!
答:麻烦再给注释一下!!/// 注释给你加上了。给,已经编译运行确认:include <stdio.h> void main(){ int m[10],i,j=0,k;long n;scanf("%ld",&n);//接收用户输入的数 k=n;//记录用户输入的数 //下面这个循环是计算输入的数一共有多少位的 while(k>0)//当前的k大于0时,循环继续 ...

C语言选择题,求详解
答:应该选B。程序结果:解析:p 表示p是一个储存地址的变量 在这个程序中当运行完p=a;时,*p为"1",*p++也为"1"p++和*(p++)相同 printf的运行顺序是从左到右 p++是把*p存储的地址+1,而p的存储地址是数组的第一个,所以相当于把p的指针往后移一位,也就是说把p指向的数组的位置往后移一...

C语言题目 求解
答:include <stdio.h> include <stdlib.h> include<string.h> void fun(char a[]){ int l=strlen(a);int i;for(i=l;i>0;i--)printf("%c",a[i-1]);} int main(){ printf("input strings\n");int a[100];gets(a);printf("show ths string:");fun(a);return 0;} ...