當前位置:首頁 » 編程語言 » c語言為什麼輸出變成兩行
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言為什麼輸出變成兩行

發布時間: 2023-01-22 18:15:49

c語言里的\n\n是換兩行的意思嗎如果是①和②為什麼都換兩行

\n代表換行符,\n\n就是換兩行

⑵ 剛開始學c語言。。。求大神看看為什麼在運行第二遍時會列印兩行(c語音)

#include<iostream>

#include<stdio.h>

#include<stdlib.h>

#include<math.h>

#include<string.h>


using namespace std;



int main(void)

{

char a;/*a選擇轉化方向*/

float c,ff; /*c為攝氏度ff為華氏度*/

do{

printf("華氏度轉化為攝氏度輸入1,攝氏度轉化為華氏度輸入2,退出輸入e。 ");

scanf("%c",&a);

switch(a)

{

case'1':

/*華氏轉化為攝氏*/

printf("請輸入華氏溫度 ");

scanf("%f",&ff);

getchar();

c=(ff-32)*5/9;

printf("攝氏度為:%f ",c);

break;


case'2':

/*攝氏轉化為華氏*/

printf("請輸入攝氏溫度 ");

scanf("%f",&c);

getchar();

ff=c*9/5+32;

printf("華氏度為:%f ",ff);

break;


case'e':

printf("歡迎再次使用 "); break;

}

}while(a!='e');

return 0;

}



少了兩個getchar();

完整運行圖如下:

⑶ c語言,圖中的程序,為什莫輸出的字元是兩行

第一個換行是因為字元串中的\n(換行符的意思)
於是得到
China
Beijing
puts函數在輸出時會自動在輸出字元串後換行
輸出的字元串所以下面有一句話
press any key to continue.....
如果原來的字元串中沒有換行符,用puts輸出就是這樣的
ChinaBeijing
press any key to continue...

⑷ c 輸出結果怎麼變成兩行

書寫的程序在書完第一個答案以後要輸出一個換行符,然後再輸出第二個答案,這樣兩個答案就會出現在兩行上。這樣就可以了。
cout<<a*b*h<<endl;
cout<<(a*b+a*h+b*h)*2<<endl;

⑸ c語言中 putchar('\n') 和 puts("\n"),為什麼第一個是換一行,第二個換了兩行

putchar意思是輸出一個字元,這里的字元'\n'表示換行;
puts意思是輸出內容並換行,'\n'本身就是換行,然後puts再換一行,就成兩行了。

⑹ C語言新手求教!為什麼會列印兩行1,2

因為第一行的1,2是你從黑色運行界面輸入的,是給scanf賦值的。第二行的1,2才是printf列印的。
望採納

⑺ c語言換行為什麼輸出兩行空行

比如你輸入 5 + 回車
本來是想 scanf 一個字元 '5'
但程序在讀入5以後,把你輸入的回車也讀進去了
就是說「 5 + 回車 」這樣一次輸入,讀入了2個字元,執行了2次循環
第二次循環中字元 '\n' 作為 %c 被輸出了,所以你會感覺多了一行
scanf就是這個特點,修改一下程序便可解決:

#include<stdio.h>

int main(){
char a;
while(scanf("%c",&a))
{
if(a=='#') break;
else
{
if(a!='\n') printf("%c\n",a);
}
}
return 0;
}

⑻ 幫忙看一下,C語言,我想在輸入N時,直接退出.可是他卻輸出了兩行多餘的語句才退出.這是怎麼回事

scanf("%d",&number); 根據要求輸入了1和回車符。接收了1,未接收回車符
number等於1
而scanf("%c",&c1);接收了回車符 c1等於'口'

c1!='n'因此循環繼續
然而想結束時輸入了n和回車符
scanf("%d",&number); 收到數據,但int緩沖區的數據為1,因此number仍然為1
scanf("%c",&c1);此時接收的便是n了,結束循環。而回車符仍然在緩沖區
試試這個結果:依次輸入1回車,n回車
int num;char c,d;
scanf("%d",&num);
scanf("%c",&c); //c 為回車符
scanf("%d",&num);
printf("%d",num);
scanf("%c",&c);
scanf("%c",&d);
printf("%c%c",c,d); //c=n,d為回車符

⑼ C語言程序里輸出字元串只有一遍,但運行時怎麼就2遍了

//程序有錯,交換兩處代碼後排除!
//下面是正確的程序,回答見後!
#include <stdio.h>
void main()
{
int i,j;
char chars[5][7];
char *p[5]={chars[0],chars[1],chars[2],chars[3],chars[4]};
for(i=0;i<=4;i++)
{ printf("請輸入字元串%d:",++i);
i--;//代碼提前
scanf("%s",chars[i]); /*chars[i]改成p[i時,程序運行時有錯誤,為什麼*/

}
for(i=0;i<=4;i++)
{
printf("字元串%d:",++i);
--i;//代碼提前
printf("%s\n",*(p+i));
}
getch();
}
//chars[i]改成p[i]時,程序改正後,運行不會有錯誤,因為chars[i]與p[i]等價!
//語句中的7是表示字元串長度,每個字元串可以輸入6個字元,
//最後一個用於存放'\0'