Corning Community College
ENGR1050 C for Engineers
This section will document any updates applied to the project since original release:
In this project, we get started with some course initialization activities.
You're reading this, so you've likely already found your way to the course homepage. It consists of the syllabus plus additional course resources.
Please familiarize yourself with it, bookmarking important resources as appropriate, so that you can refer back when needed.
I'd recommend knowing how to get to the projects page (where you found the link for this project), as new content will be posted there.
Be sure to read through and over the syllabus, ensuring there are no questions on the material and organization of the course.
Familiarize yourself with your Journal, and once there:
NOTE: Week 1 journal entry will be due before it becomes next Thursday, the remainder of the intro Journal content will be due by this project's deadline.
Using the tutorial, set up a screen session and join the #csci channel on irc. This has proven useful for more interactive (debugging!) conversations.
Additionally, other programming students should be populating this channel, so it will serve as a great medium to ask for additional help.
For many of you, this will be your first experience in the LAIR and/or logging onto Lab46.
If you are new, the first day I will have your login information which will be provided, and we will spend a few moments getting everyone logged in.
If you are already familiar, please ensure you can still log into the pods and lab46.
To both aid you and help you develop better development skills, I'd like for you to make regular commits and pushes to your Lab46 mercurial repository.
This way, you can have a regular snapshot of your work as you go along, plus have the ability to grab an older copy should something go wrong.
Like the Journal, I will be looking for a minimal amount of repository-related activity PER WEEK (for example, I will be looking for AT LEAST 1 commit in relation to your program for week 1). Note that for participation, a different quantity of commits are being looked for.
As a first week exercise, I would like you to implement, successfully compile, and verify correct execution of the best first program every great programmer writes: Hello World
Code will be as follows:
/* * hello.c - the first best C program ever * * written by: your name */ #include <stdio.h> int main() // every program needs a start, main() is ours { fprintf(stdout, "Hello, World!\n"); // display a message to STDOUT return (0); // return a success status to OS }
Your task will be to transcribe this code (sans line numbers), into a source file (call it hello.c for simplicity), within some subdirectory of your lab46 account (~/src/c4eng/cci0/ may be a good choice).
Verify you typed in everything correctly by compiling it; you want no warnings or errors:
lab46:~/src/c4eng/cci0$ gcc -o hello hello.c lab46:~/src/c4eng/cci0$
Get to know/ask questions about that gcc line… this will not be the only time you see it.
Finally, verify the program runs as anticipated:
lab46:~/src/c4eng/cci0$ ./hello Hello, World! lab46:~/src/c4eng/cci0$
Once satisfied, be sure to submit the program as indicated below.
To be successful in this project, the following criteria must be met:
Let's say you have completed work on the project, and are ready to submit, you would do the following:
lab46:~/src/c4eng/cci0$ submit c4eng cci0 hello.c info.text Submitting c4eng project "cci0": -> hello.c(OK) -> info.text(OK) SUCCESSFULLY SUBMITTED lab46:~/src/c4eng/cci0$
You should get some sort of confirmation indicating successful submission if all went according to plan. If not, check for typos and or locational mismatches.
I'll be evaluating the project based on the following criteria:
39:cci0:final tally of results (39/39) *:cci0:customized journal title [4/4] *:cci0:customized journal intro [4/4] *:cci0:subscribed to class mailing list [4/4] *:cci0:joined class irc chat [1/1] *:cci0:submitted info.text file [1/1] *:cci0:provided requested information in info.text [4/4] *:cci0:cloned lab46 mercurial repository into ~/src [1/1] *:cci0:committed and pushed populated .hgignore file [3/3] *:cci0:configured hgrc file [3/3] *:cci0:submitted file called hello.c [1/1] *:cci0:committed and pushed hello.c to repository [2/2] *:cci0:adequate and consistent indentation in hello.c [1/1] *:cci0:sufficient comments in hello.c [1/1] *:cci0:executable runs without issue [3/3] *:cci0:output conforms to project specifications [3/3] *:cci0:adequate modifications in hello.c [1/1] *:cci0:no compiler warnings for hello.c [1/1] *:cci0:no compiler errors for hello.c [1/1]
Additionally: