NOI題解(1.12程式設計基礎之函式與過程抽象)(待補全)
阿新 • • 發佈:2019-01-31
01:簡單算術表示式求值
#include <cstdlib> #include <iostream> #include <stdlib.h> using namespace std; int main(int argc, char *argv[]) { string str; getline(cin,str); int pos; for(int i=0;i<str.length();i++) { if(str.at(i)=='+'||str.at(i)=='-'||str.at(i)=='*'||str.at(i)=='/'||str.at(i)=='%') pos=i; } //cout<<pos; string substr1,substr2; substr1=str.substr(0,pos); substr2=str.substr(pos+1,str.length()-pos+1); int a=atoi(substr1.c_str());//int atoi(const char *nptr); int b=atoi(substr2.c_str()); //cout<<substr1<<" "<<substr2<<endl; switch(str.at(pos)) { case '+':cout<<a+b;break; case '-':cout<<a-b;break; case '*':cout<<a*b;break; case '/':cout<<a/b;break; case '%':cout<<a%b;break; default:cout<<"wrong input"; } return 0; }
02:簡訊計費
#include <cstdlib> #include <iostream> #include <stdlib.h> #include <math.h> using namespace std; int main(int argc, char *argv[]) { int count; cin>>count; float num,sum=0; for(int i=0;i<count;i++) { cin>>num; sum+=ceil(num/(float)70)*0.1; } cout<<sum; return 0; }
03:甲流病人初篩
#include <cstdlib> #include <iostream> #include <stdlib.h> #include <math.h> using namespace std; int main(int argc, char *argv[]) { int count; cin>>count; string name; float degree; int flag; int sum=0; for(int i=0;i<count;i++) { cin>>name>>degree>>flag; if(flag&°ree>=37.5) { cout<<name<<endl; sum++; } } cout<<sum; return 0; }