c語言入-九游会j9娱乐平台
『壹』 c語言如何輸入數據
錯誤在這兒,改正如下:
/*從用戶處獲取輸入/*
-----------
/*從用戶處獲取輸入
*/
右邊星號在內側
scanf("%f",
&weight);
-----------
yes
/」假設銠為每盎司770美元*/
-----------
/*
假設銠為每盎司770美元
*/
引號改為星號
『貳』 c語言 如何輸入
把
scanf("a=%d b=%d",&a,&b);
改成
scanf("%d %d",&a,&b);
如果不改的話,就要這樣輸入
a=xx b=yy
其中的xx和yy表示你要輸入的數值
『叄』 c語言輸入輸出
先說說這個程序是幹啥的?看不出有什麼實際的功能。
#include
int main(void)
{
char a[7];
char b[40];
printf("請輸入一個字元串:");
scanf("%s",b);
printf("你輸入了:%s\n", b);
printf("請輸入一個小於等於6個字元的字元串:");
scanf("%s",a);
printf("你的輸入:%s\n", a);
}
『肆』 c語言輸入
scanf("w%d",&a);
把 w 去掉!在 格式控制字元串 中!除了格式控制字元 !其他的都要原樣輸入!
『伍』 c語言如何套入數據
如今excel是越來越重要了,在我們自己開發的程序中不免要和excel打交道了。利用automation技術,我們可以在不去了解
資料庫的情況下玩轉excel,而且你會發現一切竟如此輕松!
好了,咱們開始吧,我不喜歡用長篇累牘的代碼來故弄玄虛,所以下面的代碼都是切中要害的片段,總體上是個連貫的過程,
包括啟動excel,讀取數據,寫入數據,以及最後的關閉excel,其中還包括了很多人感興趣的合並單元格的處理。
特別說明以下代碼需要mfc的支持,而且工程中還要包含excel2000的定義文件:excel9.h,excel9.cpp
*****************************************************************************************************************
//*****
//變數定義
_application app;
workbooks books;
_workbook book;
worksheets sheets;
_worksheet sheet;
range range;
range icell;
lpdispatch lpdisp;
colevariant vresult;
colevariant
covtrue((short)true),
covfalse((short)false),
covoptional((long)disp_e_paramnotfound, vt_error);
//*****
//初始化com的動態連接庫
if(!afxoleinit())
{
afxmessagebox("無法初始化com的動態連接庫!");
return ;
}
//*****
//創建excel 2000伺服器(啟動excel)
if(!app.createdispatch("excel.application"))
{
afxmessagebox("無法啟動excel伺服器!");
return;
}
app.setvisible(true); //使excel可見
app.setusercontrol(true); //允許其它用戶控制excel
//*****
//打開c:\\1.xls
books.attachdispatch(app.getworkbooks());
lpdisp = books.open("c:\\\\1.xls",
covoptional, covoptional, covoptional, covoptional, covoptional,
covoptional, covoptional, covoptional, covoptional, covoptional,
covoptional, covoptional );
//*****
//得到workbook
book.attachdispatch(lpdisp);
//*****
//得到worksheets
sheets.attachdispatch(book.getworksheets());
//*****
//得到當前活躍sheet
//如果有單元格正處於編輯狀態中,此操作不能返回,會一直等待
lpdisp=book.getactivesheet();
sheet.attachdispatch(lpdisp);
//*****
//讀取已經使用區域的信息,包括已經使用的行數、列數、起始行、起始列
range usedrange;
usedrange.attachdispatch(sheet.getusedrange());
range.attachdispatch(usedrange.getrows());
long irownum=range.getcount(); //已經使用的行數
range.attachdispatch(usedrange.getcolumns());
long icolnum=range.getcount(); //已經使用的列數
long istartrow=usedrange.getrow(); //已使用區域的起始行,從1開始
long istartcol=usedrange.getcolumn(); //已使用區域的起始列,從1開始
//*****
//讀取第一個單元格的值
range.attachdispatch(sheet.getcells());
range.attachdispatch(range.getitem (colevariant((long)1),colevariant((long)1)).pdispval );
colevariant vresult =range.getvalue();
cstring str;
if(vresult.vt == vt_bstr) //字元串
{
str=vresult.bstrval;
}
else if (vresult.vt==vt_r8) //8位元組的數字
{
str.format("%f",vresult.dblval);
}
else if(vresult.vt==vt_date) //時間格式
{
systemtime st;
varianttimetosystemtime(&vresult.date, &st);
}
else if(vresult.vt==vt_empty) //單元格空的
{
str="";
}
//*****
//讀取第一個單元格的對齊方式,數據類型:vt_i4
//讀取水平對齊方式
range.attachdispatch(sheet.getcells());
icell.attachdispatch((range.getitem (colevariant(long(1)), colevariant(long(1)))).pdispval);
vresult.lval=0;
vresult=icell.gethorizontalalignment();
if(vresult.lval!=0)
{
switch (vresult.lval)
{
case 1: //默認
break;
case -4108: //居中
break;
case -4131 : //靠左
break;
case -4152 : //靠右
break;
}
}
//垂直對齊方式
icell.attachdispatch((range.getitem (colevariant(long(1)), colevariant(long(1)))).pdispval);
vresult.lval=0;
vresult=icell.getverticalalignment();
if(vresult.lval!=0)
{
switch (vresult.lval)
{
case -4160 : //靠上
break;
case -4108 : //居中
break;
case -4107 : //靠下
break;
}
}
//*****
//設置第一個單元格的值"hi,excel!"
range.setitem(colevariant(1),colevariant(1),colevariant("hi,excel!"));
//*****
//設置第一個單元格字體顏色:紅色
font font;
range.attachdispatch(sheet.getcells());
range.attachdispatch((range.getitem (colevariant(long(1)), colevariant(long(1)))).pdispval);
font.setcolor(colevariant((long)0xff0000));
//*****
//合並單元格的處理
//包括判斷第一個單元格是否為合並單元格,以及將第一個單元格進行合並
range unionrange;
range.attachdispatch(sheet.getcells());
unionrange.attachdispatch(range.getitem (colevariant((long)1),colevariant((long)1)).pdispval );
vresult=unionrange.getmergecells();
if(vresult.boolval==-1) //是合並的單元格
{
//合並單元格的行數
range.attachdispatch (unionrange.getrows ());
long iunionrownum=range.getcount ();
//合並單元格的列數
range.attachdispatch (unionrange.getcolumns ());
long iunioncolumnnum=range.getcount ();
//合並區域的起始行,列
long iunionstartrow=unionrange.getrow(); //起始行,從1開始
long iunionstartcol=unionrange.getcolumn(); //起始列,從1開始
}
else if(vresult.boolval==0)
{//不是合並的單元格}
//將第一個單元格合並成2行,3列
range.attachdispatch(sheet.getcells());
unionrange.attachdispatch(range.getitem (colevariant((long)1),colevariant((long)1)).pdispval );
unionrange.attachdispatch(unionrange.getresize(colevariant((long)2),colevariant((long)3)));
unionrange.merge(colevariant((long)0)); //合並單元格
//*****
//將文件保存為2.xls
book.saveas(colevariant("c:\\\\2.xls"),covoptional,covoptional, \\
covoptional,covoptional,covoptional,0,\\
covoptional,covoptional,covoptional,covoptional);
//*****
//關閉所有的book,退出excel
book.close (covoptional,colevariant(outfilename),covoptional);
books.close();
app.quit();
關於excel.h和excel.cpp,要注意版本問題.
比如對excel xp, 類庫是直接包含在excel.exe中. 因此你只要用加入類(add class)的方法,直接選中excel.exe,並選擇對話框中的常用的幾個類(如rang)就可以編程了. 千萬不要選所有的類,否則太大了.
『陸』 c語言輸入
scanf("%s"),當鍵盤有空格輸入的時候,會跳出,, 也就是說scanf("%s"),無法讀入空格,
gets就可以
『柒』 c語言輸入函數
scanf輸入某一變數時要加&,如果某變數是某一個數組的一個元素,也要加&如scanf("%d",&a[2]),當 輸入字元串數組時不用加。如scanf("%s",a),這里的a是字元串的數組名,代表此數組的首地址
『捌』 c語言如何編入
不是,是通過在一個叫做vc的軟體平台,在裡面編寫,調試,運行。
『玖』 c語言中如何進行四捨五入,求詳細解釋!!謝謝!
方法一:
#include
int main()
{
double d1,d2,d3;
d1=-3.1415926;
d2=(int)(d1*10 0.5)*0.1;
printf("d1=%f,保留一位小數的結果為:%.1f ",d1,d2);
d3=(int)(d1*1000 0.5)*0.001;
printf("d1=%f,保留三位小數的結果為:%.3f",d1,d3);
總結四捨五入保留n為小數
(int)(x*10的n次方 0.5)*10的負n次方;
其次這個方法對負數無效;如果非要用可以先取正數部分算,最後加上負號
}
方法二:
使用round()函數。
#include"stdio.h"
#include"math.h"
void main()
{
float x;
scanf("%f",&x);
int y = round(x);
printf("%d",y);
}
(9)c語言入擴展閱讀:
c語言編寫注意事項:
1、%運算符不能應用與float或double類型。
2、char類型轉換為int型時, 無法判斷它是signed還是unsigned.這樣其結果有可能為負數, 因此轉換時盡量指定signed和unsigned限制符。
3、 i與i 不同之處: i是先 1在使用, i 是先使用i在遞加1。
4、三元運算符"?:" 第一個表達式的括弧不是必須的,但是由於三元表達式的優先順序非常低,我們還是將第一個表達式用()括起便於閱讀和理解。
5、c語言中可以使用遞歸 (即函數調用自身函數), 其不節省儲存器開銷也不加快執行速度, 只是使程序緊湊便於理解。
『拾』 c語言如何入門
c是一個結構化語言,如譚老爺子所說:它的重點在於演算法和數據結構。c程序的設計首要考慮的是如何通過一個過程,對輸入(或環境條件)進行運算處理得到輸出(或實現過程(事務)控制),而對於c ,首要考慮的是如何構造一個對象模型,讓這個模型能夠契合與之對應的問題域,這樣就可以通過獲取對象的狀態信息得到輸出或實現過程(事務)控制。
所以c與c 的最大區別在於它們的用於解決問題的思想方法不一樣。之所以說c 比c更先進,是因為「 設計這個概念已經被融入到c 之中 」,而就語言本身而言,在c中更多的是演算法的概念。那麼是不是c就不重要了,錯!演算法是程序設計的基礎,好的設計如果沒有好的演算法,一樣不行。而且,「c加上好的設計」也能寫出非常好的東西。
對語言本身而言,c是c 的子集,那麼是什麼樣的一個子集?從上文可以看出, c實現了c 中過程化控制及其它相關功能,而在c 中的c(我稱它為「c 」),相對於原來的c還有所加強,引入了重載、內聯函數、異常處理等等玩藝兒,c 更是拓展了面向對象設計的內容,如類、繼承、虛函數、模板和包容器類等等。
再提高一點,在c 中,數據封裝、類型這些東東已不是什麼新鮮事了,需要考慮的是諸如:對象粒度的選擇、對象介面的設計和繼承、組合與繼承的使用等等問題。
所以相對於c,c 包含了更豐富的「設計」的概念,但c是c 的一個自洽子集,也具有強大的功能,同樣值得學習。
如果想學編程的話,建議還是先學c,因為c是基礎。c主要是培養人的編程思想。如果c學習的好的話,再向c 過渡就很容易了。