C语言问题,两个简单的小题目!!

作者&投稿:屈伦 (若有异议请与网页底部的电邮联系)
C语言的两个简单问题~

理论上是应该执行两次啊,循环体部分应该没什么问题的 ,回车也当字符读入了?
while(1)中1表示true的意思,也就是不管什么情况下都执行该循环这样的话,循环体内必须要有break否则死循环
while(*p)是指针了,一般在一维或者二维数组中存字符串时使用,用来判断‘\0’也就是字符串尾的

#include
int main(int argc, char *argv[])
{
double dollarToRMB,euroToRMB,yenToRMB;
double forex,rmb;
scanf("%lf%lf%lf",&dollarToRMB,&euroToRMB,¥ToRMB);
scanf("%lf%lf",&forex,&rmb);

printf("%.2lf %.2lf %.2lf
",
forex/100*dollarToRMB,
forex/100*euroToRMB,
forex/100*yenToRMB);

printf("%.2lf %.2lf %.2lf
",
rmb/dollarToRMB*100,
rmb/euroToRMB*100,
rmb/yenToRMB*100);
return 0;
}
/*
Sample Input:
668.5200 908.0685 7.9852
1500
1500
*/


#include
int main(int argc, char *argv[])
{
int i;
char str[10];
gets(str);
for(i=0;str[i];i++)
printf("%03d %03o %03x
",str[i],str[i],str[i]);
return 0;
}
/*
Sample Input:
0 A
*/

1:
#include<stdio.h>
void exchange(int &x,int &y) // 这里改为&x,&y
{
int z;
z=x;x=y;y=z;
}
void main()
{
int a,b;
scanf("%d%d",&a,&b);
exchange(a,b);
printf("%d%d",a,b);
}
解释:因为你main传过去的是值,如果你在exchange函数接收也是用int,而不是用它的地址,x,y只不过是a,b的一个副本,函数结束后回到main,a,b依然是那个值。

2:
#include <stdio.h> // 要+头文件,不然有时会报错
void main()
{
int i,k,j=0,high=0,sum=0;
float aver;
for(i=0;i<30;i++) // 这里错了,你第一个是,而不是分号,语法错误
{
scanf("%d",&k);
sum+=k;
printf("%d\n",k);
high=(k>j)?k:j;
j=k;
}
aver=(float)sum/30.0;
printf("%f\n",aver);
printf("the highest score:%d",high);
}

#include<stdio.h>
void exchange(int x,int y)
{
int z;
z=x;x=y;y=z;
printf("%d,%d\n",x,y);

} //局部函数出了自己作用域之外,它的值无效,必须函数范围内才有效,或者用指针方式
void main()
{
int a,b;
scanf("%d%d",&a,&b);
exchange(a,b);
//printf("%d%d",a,b);
}

#include<stdio.h>
void main()
{
int i,k,j=0,high=0,sum=0;
float aver;
for(i=0;i<30;i++) //for(i=0,i<30;i++)应该是逗号隔开的

{
scanf("%d",&k);
sum+=k;
printf("%d\n",k);
high=(k>j)?k:j;
j=k;
}
aver=(float)sum/30.0;
printf("%f\n",aver);
printf("the highest score:%d",high);

}

你没有弄懂形参和实参的区别
参数传进去的都是一个拷贝,所以函数内部改变,但是外部却没有变化

至于第二个,for(i=0,i<30;i++)括号内的逗号改为分号

C语言问题,两个简单的小题目!!
答:} 解释:因为你main传过去的是值,如果你在exchange函数接收也是用int,而不是用它的地址,x,y只不过是a,b的一个副本,函数结束后回到main,a,b依然是那个值。2:include <stdio.h> // 要+头文件,不然有时会报错 void main(){ int i,k,j=0,high=0,sum=0;float aver;for(i=0;i<30...

C语言问题两个- - 都是简单的试卷问题 求高手进
答:1题可以看出他考察的是二维数组的引用,二维数组的定义如下:类型 数组名字 [ 数字1][数字2 ]你可以把二维数组理解为矩阵,数字1 是行 ,数字2 是列 引用的格式为: 数组名 [ x ][ y ];这样就可以判断出 正确答案为 A 2题 是考察字符数组的调用,其实字符数组调用 是从第一个元...

两道简单的C语言编程题目!如图:求详细解答.
答:include<iostream> using namespace std;void fun1(int m);void fun2();int main(){ int number;cin>>number;int value = number/10;int mode = number%10;if(0 == value){ fun1(mode);} else { while(0 != value){ fun2();--value;} fun1(mode);} return 0;} void fun1(...

一些简单的C语言题目第3弹,请高手指教!
答:2.程序源代码:#include "stdio.h"#include "conio.h"main(){ char a=176,b=219; printf("%c%c%c%c%c\n",b,a,a,a,b); printf("%c%c%c%c%c\n",a,b,a,b,a); printf("%c%c%c%c%c\n",a,a,b,a,a); printf("%c%c%c%c%c\n",a,b,a,b,a); printf("%c%c%c%c%c...

帮看看两道c语言编程题目吧,或者直接给翻译一下也行。。
答:第二题:找出一个整数集里面的加法等式,保证每一个加法等式的加数及它们的和都是这个集合的元素。交换加数的等式不算。比如集合{1, 2, 3}有一个加法等式1 + 2 = 3,其中1,2,3都是该集合的元素,符合要求(2 + 1 = 3不算)。有的集合可能找不到加法等式,比如{1, 2, 5}。有的集合...

c语言两小题
答:第一题:sizeof是用来测试类型占用字节数的函数,也就是说。题目里sizeof(x)为2,说明x占两个字节。对于两个字节的int 类型数据来说,范围是-32768~32767也就是说如果x=32767再加1就溢出了,所以答案是当x=32767时,x+1>x是假的。第二题:这个题目考查你的是关于宏定义的知识点。做这样的题...

C语言的简单题目
答:第一题 long a; //陌生人给富翁,单位万 long b; //富翁给陌生人,单位分 int main(){ int i;long todaygive;todaygive=1;for(i=0;i<30;i++){a+=10;b+=todaygive;todaygive*=2;} printf("陌生人给富翁:%ld0000元\n",a);printf("富翁给陌生人:%ld.%ld元",b/100,b%100);ge...

C语言简单编程题目两道,求高手做一下。高分!!!
答:第2题 :void isVal(void){ int i, tmp, val;int count = 0, j = 0;for (i = 0; i < MAX; i++) { // 循环验证所有数字 count = 0; // 每次清0 tmp = a[i]; // 为了不改变a数组的值, 用tmp保存着 while (tmp > 0) { // 依次取得4个位存到val变量中...

c语言小题目。急
答:main(){int i; long s1=0,s2=0;for(i=1;i<=100;i++){if(i%2) s1+=i;else s2+=i;} printf("ODD sum is %ld, EVEN sum is %ld" ,s1,s2);} 哎!,做这么多题,分实在太少呀!!!如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!

两道简单的C语言题目
答:{int op1,op2,res;char opertor;scanf ("%d",&op1); //op1为输入的整数 opertor=getchar(); //opertor为输入的字符 while(opertor!='=') //如果输入的字符不是‘=’则继续 { scanf ("%d",&op2); //op2 为输入的第二个整数 switch(opertor) //判断opertor为何种运算,并求...