首页 > 软件 > c++题怎么做

c++题怎么做

软件 2022-10-25

这些关于C语言的题怎么做?

图1的题目:考的是scanf输入参数与格式的对应。

所以只要知道整型对应int(数值太大就要长整形),字符对应char,实数对应float或double。

对应的输入格式分别是%d,%c,%f或%lf。

在多个同类型的输入参数变量,可用独立变量,也可用数组。比如3个整型,你可定义3个变量来接收输入,也可定义一个int n[3]这样的数组来接收输入。

值得注意的是字符型输入,scanf输入%c这样的格式,是会把空格和回车也作为字符接收的。所以如你单独写scanf("%c",&c);是没问题的。但如连续输入比如scanf("%d%c",&n,&c);这样输入的时候第一个数字和第二个字符之间不能有任何其它字符,包括空格和回车。否则就要用getchar来把多余字符接收掉,或清空缓存。

提示:scanf连续输入包含字符的多种格式有一技巧,那就是%s把字符当字符串来输入,最后按字符串打印或用下标取字符串中的每个字符。

下面是图1代码(我写在一个main函数中,拆开的话,getchar函数可删除):

#include

int main()

{

int i,n[3];

printf("(1)输入3个整数:\n");

for(i=0;i<3;i++)scanf("%d",&n[i]);

printf("输入的整数为:\n");

for(i=0;i<3;i++)printf("%d ",n[i]);

getchar();//连续输入在下一次输入字符前,把上一次回车接收掉

char c[3];

printf("\n\n(2)输入3个字符:\n");

for(i=0;i<3;i++)scanf("%c",&c[i]);

printf("输入的字符为:\n");

for(i=0;i<3;i++)printf("%c ",c[i]);

int n2[2];

char c2;

printf("\n\n(3)输入2个整数和1个字符(注意第3个字符输入和前一个数字间不要有任何字符包括空格和回车):\n");

for(i=0;i<2;i++)scanf("%d",&n2[i]);

scanf("%c",&c2);

printf("输入的2个整型1个字符为:\n");

for(i=0;i<2;i++)printf("%d ",n2[i]);

printf("%c",c2);

int n3;

char c3;

float f3;

printf("\n\n(4)输入1个整数和1个字符和1个实数(注意第2个字符输入和前一个数字间不要有任何字符包括空格和回车):\n");

scanf("%d%c%f",&n3,&c3,&f3);

printf("输入的整型、字符及实数为:\n");

printf("%d %c %f\n",n3,c3,f3);

return 0;

}

下面是图2:

#include

int main()

{

float r,pi=3.14159;

printf("1、输入圆的半径:"),scanf("%f",&r);

printf("圆的周长是%f,面积是%f\n",2*r*pi,pi*r*r);

printf("--------------------------------------------\n\n");

float n1,n2;

printf("2、输入长方形的长和宽:"),scanf("%f%f",&n1,&n2);

printf("长方形的面积是%f\n",n1*n2);

return 0;

}

c语言题,这个怎么做?

B,这个是最简单的scanf语句的基本用法, scanf两个参数, 一个参数,%开始为预留位置,%后是这个预留值的类型,整形的用d, 第二个参数是输入的地址,一定是地址,如果是变量就要用&取地址,如果是指针,看你要赋什么值,有的就不需要&,等你学到了就明白了

C语言问题,这个题怎么做?

选B。

这题考的就是循环。

一、首先要数一下大括号,找出两个循环的关系,及其作用域。

可见,i是外循环共执行2次,j是内嵌的循环,作用域是

for(j=0;j<=3;j++) {

if(j%2)

continue;

x++;

}

j循环当取1和3时,if判断都成立执行continue,跳过x++,所以每次j循环执行2次x++,

每次i循环执行一次j循环和2个x++语句,所以共执行了8次x++,x初值0,所以结果x=8.

这个c语言题怎么做?

题中代码错在:结构变量是传值不是传址。 在sort中形参是结构变量,因此传递时只是传递了原变量的值。形参和实参两个结构变量地址不同。当sort实现排序,只是改变了形参stu2。而main中的stu未改变。 所以,方法1:sort将stu2的值返回,main中接收返回值。 方法2:sort形参改成指针,传地址。 代码参考如下: void sort(struct stu_type *stu2) { int i,j,k,score; for(i=0;i<2;i++) { k=i; for(j=i+1;j<3;j++) if(stu2->score[k]score[j]) k=j; if

这道C语言的题怎么做?

您好,很高兴回答您的问题。

对于这个题目而言,主要是考查if~else函数的匹配使用情况。这个知识点就一定要记住:if总是与在它前面的、离它最近的、没有与别的if匹配的else匹配。有多层if语句的,一定要从最里层的if与else开始匹配。

所以整个匹配形式如图所示:

那么我们分析的时候,从最外层的if开始,if(a=b+c),其中a=b+c是赋值语句,是永远成立的条件,就不会执行a=b=c=-1这句话;并且在此情况下,a的值为0+-1=-1,那么也不满足a>0和a==0,所以执行的是倒数第二个else语句,所以最后的结果是a=b=c=1,所以答案应该选A。


标签:C(编程语言) 信息技术 编程语言 CC++ 编程

大明白知识网 Copyright © 2020-2022 www.wangpan131.com. Some Rights Reserved. 京ICP备11019930号-18