A. c語言程序設計的基本思想
模塊化的思想
模塊化程序的特點:單入口、單出口
基本的三種結構:順序、分支(選擇)、循環;
這三個基本結構來安排模塊執行的步驟;
循環三要素:初值、條件、更新;
面對編程問題:三步走策略(輸入+處理+輸出);
編程思想:分而治之+變數跟蹤+換位思考
C語言是一門面向過程的、抽象化的通用程序設計語言,廣泛應用於底層開發。C語言能以簡易的方式編譯、處理低級存儲器。C語言是僅產生少量的機器語言以及不需要任何運行環境支持便能運行的高效率程序設計語言。盡管C語言提供了許多低級處理的功能,但仍然保持著跨平台的特性,以一個標准規格寫出的C語言程序可在包括類似嵌入式處理器以及超級計算機等作業平台的許多計算機平台上進行編譯。
B. C程序代碼
親。。。主函數,呃也就是main函數。。。這么干肯定報錯。。。把裡面那些亂七八糟的清理掉使用main()或者main(void)這樣,或者是標准main函數寫法。
這段代碼里有簡單的分功能的思想,這點很好,但是分的話要詳細的分出來。C一般認為是面向過程的編程語言(關於這點,編程思想是一回事,語言是另一回事,java也能面向過程寫,C也能面向對象做的)你用文字已經很好地寫出了整個過程。所以在編寫之初,可以確定,主函數寫的是過程。so主函數
void main()
{
PutInNum(...);
SelectWho(...);
PutOutNum(...);
}
主函數的過程。
接下來就是函數實現。
//輸入
PutInNum(...)
{
//這里需要對輸入的數字進行檢測,確保是數字,這里在上面你沒表現出來,所以自己想哦,如何確保輸入的是數字?還有是不是有更好的方式,比如把計算過程直接輸入比如直接輸入1+1?而不是選擇如何計算這兩個數?因為這樣更適合使用習慣不是么?
pritnf("pleasle enter the num 1:");scanf("%d",&num1);
pritnf("pleasle enter the num 2:");scanf("%d",&num2);
pritnf("pleasle enter the "+"or"-":",1.加法,2減法);scanf("%d",&q);
}
//選擇計算方式
SelectWho(...)
{//使用switch可以保證良好的擴展性,增加乘法與除法僅僅修改這個就可以了
switch()
case "+":sum=num1+num2;//如果是加法,減法類似,本行的「+」需要有你自己的識別方式,可以用數字123之類的,減法的類似。
case ".":.....;
}//這個函數把計算結果return回來,無論加減乘除。
PutOutNum(...)
{
//這里就是printf之類的了;
printf("%d",上個函數傳回來的變數);//文字友好之類的自己做了。
}
加上函數聲明、傳參、相關incode。
根據你寫的這個,給你的建議是:首先自己找一下傳參部分的資料,自己看一下,C語言的全局變數、局部變數、變數的定義和使用之類的,因為真的是一塌糊塗,所以我採用類似偽代碼的方式,沒有完整給出來完整的代碼,探索的過程才好玩兒嘛。有把功能分開來寫的思想很好。
C. 控制台C或者C++程序,列印出自身源代碼
#include <iostream>
#include <fstream>
#define FILENAME "example.cpp" // 這里指定文件名
using namespace std;
int main()
{
ifstream ifs(FILENAME);
char data[1024];
while (!ifs.eof())
{
ifs >> data;
cout << data;
}
ifs.close();
return 0;
}
D. C語言的編程思想是什麼
C語言是面向過程的編程方法,所有功能都是靠函數來實現。學C語言就是讓你了解面向過程的編程思想和一些基本的編程演算法,為以後學習面向對象的編程打下扎實的基礎
E. C語言邏輯思維和編程思想分別是什麼
c
語言邏輯
思維,應該沒有這個說法。至於
邏輯思維能力
,
像
夏洛克
,
狄仁傑
,
袁芳
這些人的邏輯思維能力就比較強。
編程思想。
c語言是
面向過程
。
也就是要做一件事,分析出做這件事的步驟,然後將這些步驟寫成個函數。你應該畫過流程圖吧,
第一步怎麼做,下一步怎麼做,就是這種思想。
F. 什麼是編程思想,c語言的編程思想是什麼
所有的編程思想都是出自你的.就是你對一個軟體功能利用你學的編程語言開發出來.怎麼用你學的編程語言實現該功能,就用到你的編程思想了.
G. c語言123456789=100編程思想
就是個深度優先搜索。
枚舉所有符號可能添加的情況。
{
s=0; /*該方式下的和*/
m=1; /*作操作數*/
n=i; /*獲取i在3進制下的每一位會破壞i,所以借用變數n來獲取*/
op='+'; /*第一次操作方式為+*/
ptr=0; /*指針用來記錄運算過程*/
str[ptr++]='1'; /*首先記錄一個1*/
for (j=2;j<=9;j++) /*八次循環,每次的下一個操作數是j*/
{
if (n%3) /*3進制下的第j-1位數,如果不是0,則要完成先前的操作*/
{
if (op=='+') s+=m; else s-=m;m=j;
}
這段是在做拆符號的事情,就是根據i的值確定那8個空格填什麼
switch(n%3) /*根據這一位的情況進行處理*/
{
case 0:m=m*10+j;break;
case 1:op='+';break;
case 2:op='-';break;
}
if (n%3) str[ptr++]=op; /*記錄運算模式*/
str[ptr++]='0'+j;
n/=3;
}
就是按照填好的符號,計算表達式的結果
然後就是判斷是不是是100。