当前位置:首页 » 编程语言 » c语言必备18题
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言必备18题

发布时间: 2023-01-01 10:34:29

c语言编程题18

汗,刚才就写了,但没发,竟然已经有人在我之前了……

以下程序已通过调试
#include <stdio.h>
#include <string.h>
char *fun(char *s1,char *s2,int n)
{
int i,k,len;
len=strlen(s1);
k=0;
if (len<n) {k=n-len;memset(s2,'*',k);}
/*以下为复制*/
for (i=0;k<n;)
s2[k++]=s1[i++];
s2[k]=0;/*字符串结尾*/
return s2;
}
main()
{
char c1[80],c2[80];
gets(c1);
fun(c1,c2,6);
puts(c2);
puts(fun(c1,c2,30));
}

② C语言第十八题,刚入门C语言,答案是D有图,希望怎么得到的过程详细一些

指针基础知识;
fun(a,b,&c,&d);传递a和b的值,传递c和d的地址;
void fun(int x,int y,int *cp,int *dp)
定义两个int类型变量接收a和b的值;定义两个int类型指针接收c和d的地址;
指针cp指向c,*cp等价于c;
指针dp指向d,*dp等价于d;
在fun函数内部修改了变量c和d的值;

③ C语言基本问题有哪些

一、C语言规定总是从main()开始执行的(这个函数也叫“主函数”)。因此,你发来的题目中的(1、6、8)叙述都是错误的,都应该选择F。
二、第2题中,C语言对其数据在内存中所占用的实际字节数,随着程序中声明的数据类型以及数据的多少而变化,C语言本身并没有明确规定。这题应该选F。

三、第3题,C语言中强制类型转换,仅对转换的语句有效,而不会改变所转换变量的原有数据类型,这是正确的,应该选T。

四、第4题,i=8,j=10;printf("%d,%d,%d,%d\n",i,j,++i,j++);实际上是一个程序执行类题目,执行这一句时,先取得ij变量的值,其中有一个++i(先自增),一个j++(后自增),先自增的i先加上1,也就是i=8+1=9,而后自增的j在打印之后再加1,所以打印时仍是j=10。所以打印出来是:9 10 9 10。这是正确的。

五、第5题“C语言中放在“”之间的内容都被视为字符串的一个构成部分,都可以在屏幕上原样显示”的说法是错误的。举一个例子就可以了:print("%d",8);是打印不出来%d的,它只能打印出来8。所以它是错的。

六、第7题,设x、t均为int型变量,则执行语句"x = 10;t = x && x >10;"后,t的值为,这个题目好似没有写完,成了填空题了,现在来看计算过程,t = x && x >10,根据计算的优先级,>号是6级,&&是11级,先计算x >10,因为x=10,故x>10是不成立的,所以它的值是0,第二步再计算x && 0=10 && 0=0。t的值最后应该是0。
希望对你有所帮助。

④ c语言题目基础题

22题:m*n=3+1*2+3=8 选B
18题:x--(第一次x值是x-1后的值即为0)x=0[假],++y(第一次y的值为y初始值为-1,第二次才是y=y+1)y=-1[假], 结果:假&&假=真 选A
5题 A应为 int a,b=0(是逗号,不是等号),d double为双精度浮点型,保留两位小数点,改为float才正确,故 a,d为错误选项