1樓:匿名使用者
你好樓主
if(a==1)是判斷a是否等於1
而if(a=1)則直接將a賦值為1,即永遠非零(為真),不會執行else下內容,不符合程式原意
c語言中:
=為賦值
==為判斷是否相等
2樓:匿名使用者
a=1 是吧1賦值給a
if(a=1) 等價於 if(1)條件為真了這時候if語句後面的內容必然會執行的
a==1是判斷他們是否相等,如果a=0 if語句的條件就為假 if後面的{}語句就不執行了
還有個方法你可以以後再把if語句裡面的條件這樣寫比如說if(a==1)
你就寫成(1==a)
如果你少下一個=編譯器就會報錯了
建議多看看c語言基礎方面的書
3樓:匿名使用者
a==1表示判斷a要等於1才執行if的內容,而a=1是賦值,if判斷就永遠為真了,直接就執行if的內容了
4樓:石燕橋
因為if()判斷語句,判斷相等的是兩個"==" 單個等號是賦值語句,就是把1賦值給a!
5樓:
if(a=1) 先將1賦值給a 然後執行if(a), 這個時候a是1,所以if永真,不會執行else的內容了
c語言程式設計問題 求解答 急急急
6樓:匿名使用者
21c 22d 23c 24a 25c 26d 27d 28b 29b 30b
c語言 關於結構體巢狀賦值的問題 急求解答 非常感謝 15
7樓:
datetype是定義為char了嗎?
seqlist a;
strcpy(a.num[0].email,"[email protected]");
陣列不是一等公民,不能直接賦值。
8樓:匿名使用者
#include
#include
typedef char datetype;
typedef struct
emaillist;
typedef struct
seqlist;
int main()
9樓:匿名使用者
定義一個seqlist的物件,然後進行呼叫啊~比如:
seqlist seq;
seq.num[0].email[0] = 你想賦的值】你可以吧email定義成string型別
c語言問題,求解答。
10樓:匿名使用者
這個程式是要用輾轉相除法求u、v兩個數的最大公約數。
但是程式的演算法,只有當u≥v時才能正確求解。如果輸入的u小、v大,則無法得到正確的結果。也就是說前面缺少一步排序。
c語言問題,求解答~~~
11樓:
#include "stdio.h"
int factorsum(int number)int i,sum=0;
for(i=1;i<=number/2;i++)if(number%i==0)
sum+=i;
return sum;
void main()
int m,n;
int i;
while(1)
printf("請輸入m和n:");
scanf("%d %d",&m,&n);
if(m<1||n>1000||m>n)
printf("輸入錯誤,程式中止!\n");
break;
printf("從%d到%d的所有完數是:",m,n);
for(i=m;i<=n;i++)
if(i==factorsum(i))
printf("%d ",i);
printf("\n");
12樓:匿名使用者
#include
void factorsum(int a)
c語言問題,急求解答
abs 123 china a abs 123,b chinaa china b abs 123 press any key to continue include include int main printf a s n a printf b s n b return 0 輸入字串,你用scan...
c語言問題。求解答,C語言問題。求解答
上面程式的功能是算出你輸入同學的平均分,同時輸出低於平均分的分數 但是你這個程式版是有問權題的沒有退出的條件,只能輸入score為負數才能退出 分別為56,78,89,65,58,34,45,9 則輸出結果如下圖 c語言問題求解答 5 1 include 2 int main 3 21 22 23 ...
C語言問題,求解答,C語言問題,求大神解答
f函式中的a每次使用外面傳入的2,b是區域性變數,後每次都是1,c是靜態變數,函式每次執行會在上次值 1 所以最後執行三次,輸出為789 程式的輸出是 789 c語言問題,求解答 執行abc a 1 首先進行巨集代換過程,是把 a 1去替代 定義的巨集函式 x x 中的x,即得到式子 a 1 a 1...