
根据代码意思:
第一个空填写x<4。
第二个空填写y<3。
最后一个空填写z==3。
ps:这代码有一个知识点,二维数组赋初值,没有使用嵌套大括号来指明区域,按照连续地址对应赋值,数量不够对应的元素,取默认值0。(既这里的二维数组在内存中看成是从第一行第一个元素到最后一行最后一个元素的一维数组)。
static是定义静态变量,在这个代码中没有实际用处。起到全局变量作用且具有隐藏性,并且在被调用函数中使用,静态变量只在第一次调用被初始化,之后每次调用都保留值。
<1> [1] char c1,c2; 定义两个变量,下面出现了c1和c2 [2] "%c" 输入一个字符 [3] c2,c2 输出大写字母和ASCII值
<2> [1] 一个小时等于3600s,总共为ts,那么 h= t/3600%24 [由于是int,只保留整数部分,另外我这里处理是24小时进制]
[2] 剩余的s数为 t-t/h3600 -m60
[3] 格式化输出用0填充空位 %02d:%02d:%02d
1
((n % k != 0)( n / k + 1):(n / k))
2
(('a' < m && m < 'z') || ('A' < m && m < 'Z'))
3
a = 1,b = 1,m = 0,n = 6;
4
((k=a>b) && (b>c))1:0;
5
if(a > b)
{
y = 2;
printf(“%d”,y);
}
else
{
x = 1;
printf(“%d” , x);
}
6
好像没有这样的运算。
7
11
8
main()
{
int x,y,z;
scanf("%d,%d"&x,&y);
if(x < y)
{z=x;x=y;y=z;}
printf("%d,%d",x,y);
}
9
main()
{
int a,b,c,d,t;
scanf("%d %d %d %d",&a,&b,&c,&d );
if ( a<b ) { t=a; a=b; b=t; }
if ( c<d ) { t=c; c=d; d=t; }
if ( a<c ) { t=a; a=c; c=t; }
if ( b<c ) { t=b; b=c; c=t; }
if ( b<d ) { t=b; b=d; d=t; }
if ( c<d ) { t=c; c=d; d=t; }
printf("%d%d%d%d\n",a,b,c,d );
}
//需要将 putchar(str[i]); 写在新添加的for循环体内
for(i=0; i<repeat; i++){
if(str[i]>='A'&&str[i]<='Z'){
str[i]+=25;
if(str[i]>'Z')
str[i]-=26;
}
putchar(str[i]);
}
先说答案:
第一个空
c[k] = a[i]; i++
第二个空
b[j]; j++
第三个空
'c[k] = a[i];'
再说思路:
首先已知 i 和 j 分别代表选用 a 和 b 的索引,
既然是使用比较小的排在前边,
那如果 a[i] 比 b[j] 小,就肯定是选用 a[i]。
比如第一次比较时,a[0] < b[0],所以用 a[0]。
于是有 i++
比较后其它地方没有给 i 或 j 自增,
a[0] 已经被写到 c[0] 位置了,
所以下一次比较应该使用 a[1] 与 b[0] 再进行比较,
因此需要进行 *** 作。
if结束后,不走else,直接k++,所以接下来是看c[1]是什么数字。
再执行一次发现 a[1] < b[0] ,i 变成 2,k变成2。
再看 else 部分,走到 a[2] 与 b[0] 的比较发现结果是
a[2] > b[0],所以此时 c[2] 应当使用 b[0],
因此用 c[k] = b[j] 来选用更小的答案。
随后与a一样,需要对 j 进行 ++,下一次使用 a[2] 与 b[1] 比较,
判断结束后 k++,下一次判断 c[3] 是 a[2] 还是 b[1]。
当所有判断结束后,两个char[] 已经按照顺序排列到了 c[] 里,
此时的 k 坐标在完成最后一次判断后还是 ++ 了一次,指向
len(a+b)+1 的位置。
因此最后一个按照c语言的规范应当填充 '\0' 做字符串的结尾。
以上就是关于c语言程序填空全部的内容,包括:c语言程序填空、C语言程序填空问题、c语言填空编程等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)