我只是想讓程序取1到9之間的數字並計算半徑並顯示它。這個程序應該循環,但我得到的是「感謝您使用該軟件!」打印功能,它沒有經過循環,我似乎無法理解爲什麼。循環跳過語句
#include <stdio.h>
int main(void){
float i,r, V;
for(i=0; i <= 4; i++){
while (r != 0) {
printf("Enter a radius between 1 and 9: \n");
scanf ("%f", &r);
V= (3.141592)*r*r*10;
if (r>=1 && r<=9){
printf("The cylinder volume is %f\n", V);
}
else if (r > 9 || r < 0){
printf ("The input is out of the acceptable range. Select an integer less than $/n");
}
printf("Thank you for using the software!\n");
}
return 0;
}
你是什麼意思我不初始化r,我仍然是一個noob,所以我的行話有點慢。 – Levetica
這意味着你永遠不會給它賦值,所以它會給你垃圾(無論以前在那個內存位置)。初始化意味着你爲它分配一個合法的值,即'r = 1.0;' –
好吧,我明白什麼是初始化意味着現在,但如果我不知道用戶將輸入什麼值,我將如何爲變量賦值。程序的要點是要求用戶輸入1到9之間的數字,並將該數字分配給變量r,進行計算,再次將答案重新分配給r,然後顯示該數字。在我知道哪些數字可以分配之前,我如何將r分配給一個數字? – Levetica