1. 說明一個一維整數陣列passwd,下標範圍0至49 2. 在屏幕顯示 "Enter password"

Slides:



Advertisements
Similar presentations
While 迴圈 - 不知重複執行次數
Advertisements

CSIM, PU C Language Introduction to the C Programming Language 重覆敘述 (for,while,break,continue) 適合重複性的計算或判斷.
Loops.
補充: Input from a text file
第一章 程序设计入门.
C语言程序设计 第五章 选择结构程序设计.
高级语言程序设计 主讲人:陈玉华.
第3章 顺序结构程序设计 本章要点: 格式化输出函数──printf() 格式输入函数——scanf() 字符输出函数——putchar()
C++程序设计 第二讲 清华大学软件学院.
Chap 10 函数与程序结构 10.1 函数的组织 10.2 递归函数 10.3 宏定义 10.4 编译预处理.
C程序设计.
If … else 選擇結構 P27.
Chap 2 用C语言编写程序 2.1 在屏幕上显示 Hello World! 2.2 求华氏温度 100°F 对应的摄氏温度
Introduction to the C Programming Language
Introduction to the C Programming Language
第七章 函数 目录 有参的加法函数的开发 函数定义的一般形式 函数参数和函数的值 函数的调用
程式撰寫流程.
C 語言簡介 - 2.
QQ: 李祥 QQ: 欢迎多种方式的学习交流,祝大家学有所成.
Introduction to the C Programming Language
作弊是否很有诱惑性? 上堂课已经讲了 作业不一定在两个小时里都能完成 答疑没有一个人? 作弊是有记录的 心理系很多同学集体作弊,让人震惊
算法的基本概念.
Chap 3 分支结构 3.1 简单的猜数游戏 3.2 四则运算 3.3 查询自动售货机中商品的价格.
第四章 C 语言中的输入和输出.
C语言 程序设计基础与试验 刘新国、2012年秋.
第3讲 C++程序控制结构 3.1 顺序结构 3.2 分支结构 3.3 循环结构 3.4 转向控制 3.5 综合案例分析.
期中考试成绩分布 《程序设计》-2017年秋.
THE C PROGRAMMING LANGUAGE
本章中將會更詳細地考慮有關重複的概念,並且會 介紹for和do…while等兩種用來控制重複的敘述 式。 也將會介紹switch多重選擇敘述式。 我們會討論直接和迅速離開某種控制敘述式的 break敘述式,以及用來跳過重複敘述式本體剩餘 部份的continue敘述式。 本章會討論用來組合控制條件的邏輯運算子,最後.
C++语言程序设计 第二章 C++简单程序设计.
計數式重複敘述 for 迴圈 P
2.1 C语言的数据类型 2.2 常量与变量 2.3 变量赋初值 2.4 各类数值型数据间的混合运算 2.5 C语言的运算符和表达式
第5讲 结构化程序设计(Part II) 周水庚 2018年10月11日.
第七章 函数及变量存贮类型 7.1 函数基础与C程序结构 7.2 函数的定义和声明 7.3 函数的调用 7.4 函数的嵌套与递归
第4章 顺序程序设计.
授课老师:龚涛 信息科学与技术学院 2016年3月 教材:《Visual C++程序员成长攻略》 《C++ Builder程序员成长攻略》
第0章作业: 教材P12-练习与实践 1.写出用符号’*’输出描绘汉字”大”的流程图。
第1章 概述 本章要点: C语言程序结构和特点 C语言程序的基本符号与关键字 C语言程序的编辑及运行 学习方法建议:
一、文件的基本概念 第十三章 文 件 所谓“文件”是指一组相关数据的有序集合。 这个数据集有一
目录 9.1 结构体类型 9.2 共用体类型 9.3 枚举类型 9.4 类型声明符typedef 1.
C语言概述 第一章.
第1讲 C语言基础 要求: (1) C程序的组成 (2) C语言的标识符是如何定义的。 (3) C语言有哪些基本数据类型?各种基本数
程式結構&語法.
4 條件選擇 4.1 程式基本結構 循序式結構 選擇式結構 重複式結構 4-3
for 迴圈 while迴圈 do-while迴圈 break 與 continue goto 與 標籤 程式觀摩
Introduction to the C Programming Language
浙江长征职业技术学院—计算机与信息技术系—相方莉制作
Chap 5 函数 5.1 计算圆柱体积 5.2 使用函数编写程序 5.3 变量与函数.
Chap 5 函数 5.1 计算圆柱体积 5.2 数字金字塔 5.3 复数运算.
程式的時間與空間 Time and Space in Programming
第十四章 若干深入问题和C独有的特性 作业: 函数指针 函数作参数 函数副作用 运算 语句 位段 存储类别 编译预处理
C程序设计.
C语言程序设计 李祥 QQ:
第2章 认识C语言 教学要点 2. 1 项目二C语言程序识读 2 .2 项目三班级成绩排名 2 .3 知识链接 返回.
C++程式設計入門 變數與運算子 作者:黃建庭.
第2章 基本数据及其运算 本章学习的目标: 1、掌握基本数据的各种表示,基本数据常数的书写方法;
Introduction to the C Programming Language
第三章 基本的輸出與輸入函數 (Basic Output & Input Function)
第四章 C 语言中的输入和输出.
第五章 逻辑运算和判断选取控制 §5.1 关系运算符和关系表达式
Introduction to the C Programming Language
第七章  数 组.
Chap 7 数 组 7.1 排序问题 7.2 找出矩阵中最大值所在的位置 7.3 进制转换.
C/C++基礎程式設計班 C語言入門、變數、基本處理與輸入輸出 講師:林業峻 CSIE, NTU 3/7, 2015.
第一次上機考參考答案 僅供參考,同學可自行再想更好的方法..
Chap 10 函数与程序结构 10.1 圆形体积计算器 10.2 汉诺塔问题 10.3 长度单位转换 10.4 大程序构成.
第三章 流程控制 程序的运行流程 选择结构语句 循环结构语句 主讲:李祥 时间:2015年10月.
Q1(a) 小偉打算編寫一個程序。該程序把兩個44的表內的數字相加。表3內的數字是由表1和表2應格子內的數字相加而成。例如:
C语言基础学习 从外行到入门.
C++语言程序设计 C++语言程序设计 第二章 基本数据类型与表达式 第十一组 C++语言程序设计.
Presentation transcript:

1. 說明一個一維整數陣列passwd,下標範圍0至49 2. 在屏幕顯示 "Enter password" 1995 Q1b 1. 說明一個一維整數陣列passwd,下標範圍0至49 2. 在屏幕顯示 "Enter password" 3. 設陣列下標變量k的初始值為0. 4. 當k<50時,執行下列各項. 接受一鍵入的字符ch,並把它貯於一變量中 把passwd的第k個元素(passwdk) 賦值為該鍵入字符ch的ASCII碼 把k加1 5. 設整數變量pin的初始值為0 6. 用以下公式計算pin的值. pin = 1*passwd0 + 2*passwd1 + … + 50*passwd49 7. 輸出pin 2018年12月31日 Algorithm 95-04 算法 (C)

#include <stdio.h> main(){ int passwd[50], k=0, pin=0; char ch; printf("Enter password: "); while(k<50){ scanf("%c", &ch); passwd[k]=ch; k++; } for(k=0; k<50; k++) pin += (k+1)*passwd[k]; printf("%i\n", pin); 2018年12月31日 Algorithm 95-04 算法 (C)

1996 Q1b 1. 說明fp 為文本文件。 2. 說明cnt為整數變量。 3. 說明ch 為字符變量。 4. 設定cnt為零。 5. 將fp與磁盤文件名data96.txt聯繫。 6. 準備fp,以讀取資料。 7. 在未達至文件結尾時,執行以下工作. 從fp讀取一字符,並放置於ch內. 如ch='a' 或 'A' ,則將cnt增加1。 8. 顯示cnt。 9. 關閉文件fp。 2018年12月31日 Algorithm 95-04 算法 (C)

#include <stdio.h> main(){ FILE *fp; int cnt=0; char ch; fp = fopen("data96.txt","r"); while(!feof(fp)){ ch=fgetc(fp); if(toupper(ch)=='A') cnt++; } printf("%i\n", cnt); fclose(fp); 2018年12月31日 Algorithm 95-04 算法 (C)

1997 Q1b 1. 說明x、y、d及gcd為整數變量。 2. 讀取兩整數並將它們分別貯存於x及y。 3. 把1賦予變量d。 則 把y的值賦予變量x, 把d的值賦予變量y, 否則 把x的值賦予變量y, 把d的值賦予變量x, 7. 若x>y, 則 把x的值賦予變量gcd, 否則 把y的值賦予變量gcd。 8. 顯示gcd的值。 2018年12月31日 Algorithm 95-04 算法 (C)

#include <stdio.h> #include <stdlib.h> main(){ int x, y, d, gcd; do{ printf("Enter 2 positive numbers: "); scanf("%d%d", &x, &y); d=1; while(d!=0){ d=abs(x-y); if(x>y){ x=y; y=d; }else{ y=x; x=d; } if(x>y) gcd=x; else gcd=y; printf("gcd = %d\n", gcd); } while(1); 2018年12月31日 Algorithm 95-04 算法 (C)

1. 說明mnum、x、y、sum、cnt為整數變量。 2. 讀入一會員卡號碼並貯存至 mnum中。 3. 將mnum 的值賦與 x。 1998 Q1b 1. 說明mnum、x、y、sum、cnt為整數變量。 2. 讀入一會員卡號碼並貯存至 mnum中。 3. 將mnum 的值賦與 x。 4. 將0賦與sum。 5. 將1賦與cnt。 6. 當cnt<6時,重複步驟7至10. 7. 將 (x10)*10 的值賦與y。 8. 將 (sum+xy) 的值賦與sum。 9. 將 (y10) 的值賦與x。 10. 將 cnt 的值加1。 11. 若sum 可被10整除, 則 顯示 "Valid number", 否則 顯示 "Invalid number". 2018年12月31日 Algorithm 95-04 算法 (C)

#include <stdio.h> main(){ int mNum, x, y, sum, cnt; do{ printf("Q: Membership card no. (5-digit): "); scanf("%d", &mNum); x = mNum; // e.g. 12345 sum = 0; cnt = 1; while(cnt<6){ y = (x/10)*10; // 12340 sum += x-y; // sum += x%10; x = y/10; cnt++; } printf("Sum = %d\n", sum); if(sum%10==0) printf("Valid Number\n"); else printf("Invalid Number\n"); }while(mNum!=999); 2018年12月31日 Algorithm 95-04 算法 (C)

1. 說明p、repay、i為實數變量,n、flag為整數變量。 2. 分別把借款額、每月還款額、月息率讀入變量p、repay、i中。 1999 Q1b 1. 說明p、repay、i為實數變量,n、flag為整數變量。 2. 分別把借款額、每月還款額、月息率讀入變量p、repay、i中。 3. 把還款期數變量n初始化為0。 4. 把flag初始化為0。 5. 當flag=0,重複步驟5至7。 6. 把p之值加上p*i。 7. 若p不大於repay,則賦值1予flag, 否則 (i) 從p中減去repay;及 (ii) 把n之值加1。 8. 顯示還款期數n+1。 2018年12月31日 Algorithm 95-04 算法 (C)

#include <stdio.h> main(){ float p, repay, i; int n, flag; printf("借款額、每月還款額、月息率: "); scanf("%f%f%f", &p, &repay, &i); n=flag=0; while (flag==0){ p += p*i; if(p<=repay) flag=1; else{ p -= repay; n++; } printf("還款期數=%i\n",n+1); 2018年12月31日 Algorithm 95-04 算法 (C)

pitem為字符變量,complete為布爾變量(0,1), 而subtotal為一元整數陣列,其大小為 3。 2000 Q1b 1. 說明 total, i, qty為整數變量, pitem為字符變量,complete為布爾變量(0,1), 而subtotal為一元整數陣列,其大小為 3。 2. 把陣列subtotal初始化為 0, total初始化為 0; 而complete初始化為 false(0)。 3. 當complete為false(0),重複步驟4至9。 4. 讀入貨品種類(A-E)至pitem。 5. 若pitem='Q',則賦值true(1)予complete; 6. 否則 讀入顧客購買該貨品的數量至qty。 7. 當qty的輸入值不在1至10間 (包括1和10),重複步驟6。 8. 依pitem的類別,將subtotal的對應元素增加qty。 9. 將total的值增加qty。 10. 顯示total和subtotal陣列。 一小型雜貨店只售賣A、B、C、D和E五種貨品。 這五種貨品可分為三個類別。 A、B和C屬於第1類,D屬於第2類,而E則屬於第3類。 當顧客到櫃位付款時,收銀員的電腦會執行一程序 來計算顧客購物的總數和每類別貨物的小計。 2018年12月31日 Algorithm 95-04 算法 (C)

int subtotal[3], total=0, i, qty, complete=0; char pItem; for(i=0;i<3;i++) subtotal[i]=0; while(!complete){ printf ("Enter item (A..E): "); scanf("%c", &pItem); complete = (pItem=='Q'); if(!complete){ do{ printf ("Enter quantity (1-10) for item %c: ", pItem); scanf("%d", &qty); }while (qty<=0 || qty>10); switch(pItem){ case 'A': case 'B': case 'C': subtotal[0] += qty; break; case 'D': subtotal[1] += qty; break; case 'E': subtotal[2] += qty; break; } total += qty; printf("Total sum = %d\n", total); for(i=0;i<3;i++) printf ("sub-total[%d] = %d\n", i,subtotal[i]);

1. 說明denary、remainder、i 為整數變量,而binary為字符串變量。 2. 讀入十進數至變量denary。 2001 Q7 修改 1. 說明denary、remainder、i 為整數變量,而binary為字符串變量。 2. 讀入十進數至變量denary。 3. 賦值「空字符串」予變量binary。 4. 只要denary>0,重複步驟5至8. 5. 賦值denary%2予變量 remainder。 6. 賦值denary2 予變量 denary。 7. 將變量remainder 轉換成字元, 8. 並順序將字元加到字串變量binary。 9. 反序顯示變量binary所貯存的值。 2018年12月31日 Algorithm 95-04 算法 (C)

int denary, remainder, i; char binary[20]; while(1){ printf("Q:十進數: "); scanf("%d", &denary); binary[0] = '\0'; i=0; while(denary>0){ remainder = denary%2; denary /= 2; binary[i]=remainder+'0'; i++; } binary[i] = '\0'; printf("A:二進數 = "); for(i=strlen(binary)-1; i>=0; i--) printf("%c", binary[i]); printf("\n\n"); 2018年12月31日 Algorithm 95-04 算法 (C)

1. 說明former(前者)、latter(後者)、limit(限度) 和 cnt 為整數變量 2. 讀入一整數至變量limit 2002 Q7 1. 說明former(前者)、latter(後者)、limit(限度) 和 cnt 為整數變量 2. 讀入一整數至變量limit 3. 賦值1 予變量former 4. 賦值1 予變量latter 5. 賦值0 予變量cnt 6. 只要變量former  limit 的值,重複步驟7 至11 7. 顯示變量former 的值, 並保持游標在同一行 8. 將變量latter 的值加上變量former 的值, 並將結果賦值予變量latter 9. 將變量latter 的值減去變量former 的值, 並將結果賦值予變量former 10. 把變量cnt 的值加1 11. 若變量cnt 的值能為6所整除, 則將游標下移一行 2018年12月31日 Algorithm 95-04 算法 (C)

int former, latter, limit ,cnt; printf("Enter limit: "); main(){ int former, latter, limit ,cnt; printf("Enter limit: "); scanf("%d", &limit); former = latter = 1; cnt = 0; printf("Fibonacci sequence ...\n"); while(former<=limit){ printf("%d\t", former); latter += former; former = latter - former; cnt++; if(cnt%6==0) printf("\n"); } printf("\n"); 2018年12月31日 Algorithm 95-04 算法 (C)

1. 說明num, count, lower和upper為整數變量。 2. 讀入兩個整數至變量lower和變量upper,分別代表下限和上限 2003 Q8 1. 說明num, count, lower和upper為整數變量。 2. 讀入兩個整數至變量lower和變量upper,分別代表下限和上限 3. 賦變量lower的值予變量num。 4. 當變量num  upper的值,執行步驟5至9 5. 賦值2予變量count。 6. 當變量num的值不能為變量count的值整除,執行步驟7 7. 將變量count的值加1。 8. 若變量num=count,顯示變量num的值 9. 把變量num的值加1。 2018年12月31日 Algorithm 95-04 算法 (C)

int num, divisor, lower, upper; main(){ int num, divisor, lower, upper; printf("Q: Lower(>1) & Upper limits : "); scanf ("%d %d", &lower, &upper); if(lower<2) lower=2; num = lower; while(num<=upper){ divisor=2; while(num%divisor>0) divisor++; if(num==divisor) printf("\t%d",num); num++; } printf("\n"); 2018年12月31日 Algorithm 95-04 算法 (C)

下列算法計算此表達式. ½(f1+2f2+...+2fn-1+fn) 1. 說明i和n為整數變量。 說明f和result為實數變量。 2004 Q8 下列算法計算此表達式. ½(f1+2f2+...+2fn-1+fn) 1. 說明i和n為整數變量。 說明f和result為實數變量。 2. 初始化i為1。 初始化result為0。 3. 讀入一個整數至變量n。 4. 當變量in,執行步驟5至7。 5. 讀入一個實數至變量f。 6. 若變量i≠1和i≠n, 將變量result的值加上變量f兩倍的值 否則將變量result的值加上變量f的值。 7. 將變量i的值加1。 8. 將變量result的值除以2。 9. 顯示變量result的值。 n和fi (i=1,2,3,...,n) 的值在執行這個程序時,透過鍵盤順序輸入。 2018年12月31日 Algorithm 95-04 算法 (C)

printf("Result = %.2f\n",result); main(){ int n, i=1; float f, result=0; printf("輸入多少個數 (n): "); scanf("%d", &n); while(i<=n){ printf("輸入實數 (f): "); scanf("%f",&f); if(i!=1 && i!=n) result += 2*f; else result += f; i++; } result/=2; printf("Result = %.2f\n",result); 2018年12月31日 Algorithm 95-04 算法 (C)