C語言程式設計問題,c語言程式設計問題

2023-09-13 23:29:06 字數 3354 閱讀 9153

1樓:王振林登峰

我只感覺到上面的程式有錯誤,但是不是死迴圈啊。

這句感覺就不對。

d%d 沒有對應的接受鍵盤輸入的變數。

for(j=0;j<5;j++)

stu1[i].tot=stu1[i].tot+stu1[i].score[j];

很明顯上面這樣輸入會造成越界。

當j=4的時候stu1[i].score[4]是沒有意義的。

printf("%s%d%d",stu1[i].score[j]);這句也不對。

根本不符合規則嗎。

乙個整型怎麼和字串對應呢,並且變數個數還對應/只是粗略的改了改,你的程式可讀性太差,而且一些很基本的常識還不夠清楚,還得好好看看基礎知識。

#include ""

#define n 5

void main()

struct student

char name[5];

int score[4];

int tot;}stu1[n],temp;

int i,j,k;

for(i=0;i=stu1[i].tot)k=j;if(k!=0)

temp=stu1[i];

stu1[i]=stu1[k];

stu1[k]=temp;}

printf("學生從高到底排序為:")

for(i=0;iprintf("學生姓名為%s",stu1[i].name);

printf("總成績%d",stu1[i].tot);}scanf("%d",i);/

2樓:xiao愚昧

for(i=0;i/這個地方輸入有誤;要想輸入name應該是。

for(i=0;iscanf("%s",&stu1[i].name);

後邊對應輸出也是有誤,並且這個。

for(i=0;istu1[i].tot=0;

for(j=0;j<5;j++)

stu1[i].tot=stu1[i].tot+stu1[i].score[j];

也不是應該巢狀使用for來輸入資料啊;

c語言程式設計問題

3樓:有柴公尺呀呀呀呀

提問怎麼改。

把replace函式提到main函式外面。

提到main函式的前面。

或者在main前面寫乙個replace函式宣告宣告報告裡面呢,還寫了呼叫時的型別是衝突的。

c語言程式設計問題

4樓:貳彤雲憑懌

我解釋下遞迴函式吧:f(6)中有f(6/2)即f(3)和printf函式,但要等f(3)執行完後才執行printf函式(輸出6),f(3)中有f(3/2)即f(1)和printf函式,但要等f(1)執行完後才執行printf函式(輸出3)

5樓:粘代卉普煦

這是個遞迴問題,fun()函式在函式體內部又呼叫了自己。

具體解法可以這樣理解:

1、執行if(x/2>0)

2、若結果為真,執行fun(x/2);,後面那句printf("%d",x);暫時不執行。

3、當執行完fun(x/2)[裡面可能還包含了fun()這樣的呼叫],再執行第2步中未執行的printf("%d",x);

舉例:fun(6);

1、執行if(6/2>0)

2、由於6/2=3,所以,執行fun(6/2),即fun(3),這時,printf("%d",x=6)這句暫時不執行,等fun(3)執行完了再執行。

3、執行fun(3),這又是乙個fun()函式,所以,仍然先判斷if(3/2>0),4、顯然,3/2=1,大於0,這時,先執行fun(1/2),printf("%d",x=3)暫不執行,等fun(1/2)執行完了再執行。

2=0,所以,不符合要求,執行printf("%d",x=1);

6、這時,fun(1/2)便執行完了,接著,需要執行剛才未執行的printf("%d",x=3)

7、printf("%d",x=3)也執行完了,需要執行剛才未執行的printf("%d",x=6)

最後,得到的結果就是136

對於main0

這個是乙個判斷條件的問題。關鍵是要看這幾個符號的結合順序。

00(x<20),左邊是真,右邊是假,&&要兩邊是真,結果才是真,所以,這個表示式的結果是假,即0

6樓:自我程式設計

1、輸入有范圍,兩個變數輸入都需要驗證,方法變數處置範圍以外,迴圈判斷輸入。

2、天數迴圈計數,日期0~6週期自增。用變數累加計數結果。

下面是演示**:

#include

int main()

int i,j,a=7,n=366,cnt=0;

while(a<0 ||a>6)

printf("請輸入a的值(0~6):"scanf("%d",&a);

while(n<0 ||n>365)

printf("請輸入n的值(0~365):"scanf("%d",&n);

for(i=0,j=a;iif(j==4) cnt++;

if(j==6) j=-1;

printf("上機次數%d次",cnt);

return 0;

7樓:嘉嘉設計師

你好,是什麼問題呢?

提問。<>

怎麼改。你是在後面宣告了乙個replace函式。在前面應用了。

把replace函式提到main函式外面。

提到main函式的前面。

或者在main前面寫乙個replace函式宣告宣告。

報告裡面呢,還寫了呼叫時的型別是衝突的。

8樓:小

這個程式不就是列印從11開始的第5個素數嗎?

c語言程式設計的問題?

9樓:網友

這個語句的末尾有乙個分號,因此後面的。

不在迴圈體內。

這裡反映了乙個重要的習慣:迴圈體始終用大括號括起來,不要省略大括號,即使只有一句。

c語言程式設計問題?

10樓:網友

假設班級人數最多200人,輸入資料時,以輸入-1代表輸入結束,如下**:

int main()

else break; }for(j=1;j<=i-1;j++)r1=r1+a[j]; r1=r1/(i-1); printf("%d %.2f",i-1,r1); for(j=1;j<=i-1;j++)printf("%d %.2f",k,r2/k); for(j=1;j<=i-1;j++)printf("%d %.

2f",m,r3/m); return 0;}

c語言程式設計問題,C語言程式設計問題?

int main printf 字母數 d n空格數 d n數字數 d n其他字元數 d n letters,space,digit,other return 0 第一個問題 無效的主要 i 100 i 100 第二個問題,到1 100奇 0 int i 1 i 1 100 i i 100 而 i ...

C語言程式設計問題,c語言程式設計問題

先while或do while輸入成績,成績放入先定義的陣列,直到輸入負數結束。然後for迴圈算出總成績,然後定義變數平均直,算出變數直。for迴圈裡套if條件低於60輸出。課本上有例子,你看呀。c語言程式設計問題 提問怎麼改。把replace函式提到main函式外面。提到main函式的前面。或者在ma...

c語言程式設計問題

d sqrt b b 4 a c 這句是最嚴重的錯誤.如果 b b 4 a c 0,就不能開方.所以上面的答案不能把這個改回來的都是錯的.還有,復根也是可以求出來的.一句無解是不負責任的.當然還應該加上一個迴圈語句,判斷a是不是等於零.下面是我的c 不是為了解答你的問題,只是希望你能瞭解這個問題需要...