㈠ 大一c語言編程的結構體基礎題

Friend f沒有初始化

在c++中可以給結構體增加構造函數
或者在聲明之後,使用memset初始化

㈡ 大學c語言,答案是順序結構,循環結構,選擇結構,嗎

幾乎所有編程語言,包括C語言,都會有三種基本的程序結構:順序結構、選擇結構和循環結構。

  • 順序結構

順序結構就是一條一條地從上到下執行語句,所有的語句都會被執行到,執行過的語句不會再次執行。

例如,求1+2+3+4+5的和,就可以一個數一個數地依次累加。

  • 選擇結構

選擇結構就是根據條件來判斷執行哪些語句,如果給定的條件成立,就執行相應的語句,如果不成立,就執行另外一些語句。

例如,根據用戶輸入的年齡來輸出不同的內容:

年齡 小於18 你還未成年,應該好好學習

大於等於18,小於等於30 珍惜青春,多做有益的事情

大於30,小於60 社會中堅力量,工作的同時注意身體

大於等於60 請您安享晚年,我們會記得您對社會的貢獻

用戶輸入年齡,程序會做出判斷,根據不同的年齡輸出不同的內容。這四個輸出語句,只有一個被執行,其他三個被跳過,沒有執行。

  • 循環結構

循環結構就是在達到指定條件前,重復執行某些語句。

例如,上面說到的計算 100! 的值,就會重復執行 S3、S4。

最後,我們用雙重循環結構來輸出九九乘法表:

#include

int main(){

int i, j;

for(i=1; i<=9; i++){

for(j=1; j<=i; j++){

printf("%-3d ", i*j); // -3d 表示輸出整數,寬度為3(佔3個字元),左對齊

}

printf(" ");

}

return 0;

}

㈢ 大一c語言存儲結構試題

行序存儲,每行6個元素,a[5][5]前共有5×6+5=35個元素,所以其地址為:0x1020+35*4=0x10ac
列序存儲,每列8個元素,a[5][5]前共有5×8+5=45個元素,所以其地址為:0x1020+45*4=0x10d4

㈣ 大一C語言問題,有關結構體。。。

#include<stdio.h>
#include<malloc.h>
#include<string.h>
#include<windows.h>

structteleno
{
charname[10];
intnumber;
};

structteleno*Init(structteleno*);
voidFind_num(structteleno*);
boolIs_same(char*,char*);

structteleno*Init(structteleno*a)
{
inti;
structteleno*p;
for(i=0;i<5;i++)
{
p=(structteleno*)malloc(sizeof(structteleno));
printf(" ----%d---- ",i+1);
printf("請輸入姓名:");
scanf("%s",p->name);
printf("請輸入號碼:");
scanf("%d",&p->number);

a[i]=*p;
}
returna;
}

voidFind_num(structteleno*a)
{
inti,t=0;
charName[10];
char*p=Name;
charword;
printf(" 請輸入查找人姓名:");
while((word=getchar())!='#')
*p++=word;
*p='';
/*while(1)
{
if((word=getchar())=='#')
break;
*p++=word;
}
for(i=0;i<5;i++)
{
if(Is_same(Name,a->name))
{
printf("%s:",a->name);
printf("%d ",a->number);
t=1;
}
*a++;
}
if(t==0)
printf("Sorry!未找到相應號碼! ");
return;
}

boolIs_same(char*p1,char*p2)
{
inti=0,j,k;
p1++;
j=strlen(p2);
k=strlen(p1);
if(j!=k)
returnfalse;

while((*p1!='')||(*p2!=''))
{
if(*p1==*p2)
i++;
p1++;
p2++;
}
if(i==j)
returntrue;
else
returnfalse;
}

intmain()
{
telenoa[5];
structteleno*p=a;
p=Init(p);
Find_num(a);

system("pause");
return0;
}

【PS】根據您說的,我做了一下,可能不符合您的意思,我沒太讀清題意:

1.是不是再導入姓名和號碼時是#結束,然後輸入姓名查號碼?

2.是不是在查詢時輸入參考姓名是以#結束?

㈤ 請問大學學習數據結構與演算法(C語言版)需要多強的C語言基礎

有時間的話肯定是深入學習一下比較好,不過也不要有壓力,大學的東西都是「平易近人內」的,只容要你認真學肯定是沒問題的,頂多就是比基礎好的人多花點時間。
數據結構的話跟C語言還有點關系,但是大部分人對數據結構都不會很了解,所以基本可以認為你們處於同一起跑線。
演算法的話重要的是你的邏輯思維能力和數學功底,C語言只是實現演算法的工具,只要演算法理解透了,你可以用C++,可以用Java,甚至腳本語言Python,如果C語言基礎好,只會使你實現演算法的時候更加順手,但演算法的實現本不是演算法學習的精髓,演算法本身及邏輯能力的提高才是你需要重點關注的。

㈥ C語言大一,結構體實驗

您好,這是屬於數學中的三角函數,三角函數需要很精心的計算才能分解而成,只要用心就沒有過不去的關,這個代碼就是Sigma,也就是傳說中的標准方差,謝謝。

㈦ 在大學里是先學數據結構還是先學C語言啊

一般的傳統是先學一門編程語言先對數據結構有一定的感性認識,再去學數據結構。而國外的很多專家的建議是邊學編程語言邊學數據結構。哪個更合理就要看自己拉,沒有對每個人都通用的學習方式,如果自己的抽象思維很強先學數據結構再學C也不是不可以。每個人都不同的嘛。

㈧ 大學生如何學C語言

問題一個個來。

  1. 好像很多問題都是我不知道一些特殊函數

這個問題我覺得可能是你學的不夠扎實,C語言中的函數的源頭有三種:標准庫函數、第三方庫函數、自己寫的函數。你所說的特殊函數如果是memset()、time()、sqrt()等等這類標准函數那就只能死記硬背或者說熟能生巧更多的應該是學會網路;如果是第三方函數,那就要看第三方的文檔,然後才能知道這些函數是幹嘛的,這個第三方可能是某個公司或者某個人反正函數不是你寫的你就得問寫這個函數的人;至於自己寫的函數那當然沒啥疑問了。至於怎麼區分這三種函數最簡單的方法就把函數名網路一下。

2. 大一隻學了源程序的編寫其他那麼多又該怎麼學

其他這么多指的是什麼?如果僅僅是函數的話參照第一個問題,如果是其他的那麼就列出來有哪些。

3.現在專業課要編代碼突然發現當時學得c語言無法解決現有問題

當時學了哪些,無法解決哪些問題?學C語言的最終目的都是為了寫程序,那麼一個C語言的程序都是由.c文件 .h文件 以及.c文件中定義的程序框架(單/多線程/定時器/等)、變數及類型(int/char/全局/局部/靜態/等)、數據結構(結構體/紅黑樹/鏈表/等)、函數方法(voi man()/time()/自定義()/等)、演算法(排序/等)、內存管理(堆/棧/靜態/動態)、指針等來組成一個程序,你是其中哪個模塊不清楚呢?

4. c語言該怎麼學

很大的一個問題,無外乎幾個關鍵點和難點。關鍵點參照第3個問題回答,難點只要是演算法和數據、指針,這個沒辦法不懂就問老師或者網上找資料。關鍵點和難點就是基本功,然後有了基本功就可以根據項目(課後項目入管理系統之類的/等)練手,也可以進公司實習練手,最終成為大佬。

㈨ 大一C語言順序結構程序實驗內容怎麼寫啊

最煩這種實驗報告了