|
|||
Варианты заданий см. в файле варианты.doc.Стр 1 из 2Следующая ⇒ Варианты заданий см. в файле варианты.doc. If/else + switch 1. Перевести из математического выражения в программу a) b) c) d) e) f) 2. Вычислить чему равно с при данных a и b. Чему будет равно c, если убрать красные фигурные скобки? Нарисовать схему алгоритма для обоих случаев. int a=A,b=B,c; c=4; if (a|b>20 && a&b<10) { if(a^b>15) c=5; } else { c=6; } 3. Вычислить чему равно с при данных a и b. Чему будет равно c, если убрать все команды break? Нарисовать схему алгоритма для обоих случаев. int a=A,b=B,c; switch(a) { case 0:case 10:case 12:case 14:case 16: c=a|b; break; case 1:case 5:case 7:case 9:case 11: c=a&b; break; case 2:case 6:case 8:case 17: c=a^b; break; default: c=a<<b; break; } For, while, do/while + continue, break 4. Нарисовать схему алгоритма и провести минимум 10 итераций цикла (если выход из цикла не произойдет раньше). a) int a=A,b=B,c=C,d=0; for (a=0;(a^b)!=0;a++) { if(a&c) continue; if(!c) break; d++; }
b) int a=A,b=B,c=C,d=0; while(a^b) { if(!(a&d)) continue; if(!c) break; c ^= a; if(b&c) c |= b; a=d++; }
c) int a=A,b=B,c=C,d=0; do{ if(!c) continue; if(c^b) break; c ^= a; if(a&c) c |= a; a=--d; }while(a^b) Строки 5. Нарисовать схему алгоритма и объяснить, что делает программа. a) void main() { char stroka[100],c; int i,j; puts("Введите строку"); gets(stroka); for(i=0,j=strlen(stroka)-1;i<j;i++,j--) { c=s[i]; s[i]=s[j]; s[j]=c; } puts("Результат"); puts(stroka); } b) void main() { char stroka[100]; int n; puts("Введите строку"); gets(stroka); for(n=strlen(stroka)-1;n>=0;n--) if(stroka[n]!=' ' && stroka[n]!='\t') break; stroka[n+1]='\0'; puts("Результат"); puts(stroka); }
c) void main() { char stroka[100],podstroka[100]; int i,j,k; puts("Введите строку"); gets(stroka); puts("Введите подстроку"); gets(podstroka); for(i=0;stroka[i]!='\0';i++) { for(j=i,k=0;podstroka[k]!='\0' && stroka[j]==podstroka[k];j++,k++); if(k>0 && podstroka[k]=='\0') { printf("%d",i); break; } } }
|
|||
|